jiebi/CodeConvo huggingface dataset:
Code change:
What happened: What you expected to happen: Human readable error output. Anything else we need to know?: The same is happening when in duplicate key while creating a with binaries. !!! The error output will be all the of the binary itself !!! Environment: Kubernetes version (use ):
/sig cli
/cc

Related discussion:
text: } if _, exists := configMap.Data[keyName]; exists { <del> return fmt.Errorf("cannot add key %s, another key by that name already exists in data: %v", keyName, configMap.Data) </del> <ins> return fmt.Errorf("cannot add key %q, another key by that name already exists in Data for ConfigMap %q", keyName, configMap.Name) </ins> } if _, exists := configMap.BinaryData[keyName]; exists { <del> return fmt.Errorf("cannot add key %s, another key by that name already exists in binaryData: %v", keyName, configMap.BinaryData) </del> <ins> return fmt.Errorf("cannot add key %q, another key by that name already exists in BinaryData for ConfigMap %q", keyName, configMap.Name) </ins> } return nil }
Code change:
What happened: What you expected to happen: Human readable error output. Anything else we need to know?: The same is happening when in duplicate key while creating a with binaries. !!! The error output will be all the of the binary itself !!! Environment: Kubernetes version (use ):
/sig cli
/cc

Related discussion:
text: } if _, entryExists := secret.Data[keyName]; entryExists { <del> return fmt.Errorf("cannot add key %s, another key by that name already exists: %v", keyName, secret.Data) </del> <ins> return fmt.Errorf("cannot add key %s, another key by that name already exists", keyName) </ins> } secret.Data[keyName] = data return nil
Code change:
What happened: We currently unregister the CSI driver if an error happens while registering it. Then, if another error happens, we return only the unregistration error. The problem is that the user will only see the unregistration error if they check the registrar logs. This gives the impression that it never tried to register the driver. What you expected to happen: The user should see the registration error instead. How to reproduce it (as minimally and precisely as possible): Try to install a CSI driver in a cluster where CSINodeInfo and/or CSIDriver CRDs are not created. Check registrar logs /kind bug /sig storage CC
/assign

Related discussion:
text: driverNodeID, maxVolumePerNode, accessibleTopology, err := csi.NodeGetInfo(ctx) if err != nil { <del> klog.Error(log("registrationHandler.RegisterPlugin failed at CSI.NodeGetInfo: %v", err)) </del> if unregErr := unregisterDriver(pluginName); unregErr != nil { klog.Error(log("registrationHandler.RegisterPlugin failed to unregister plugin due to previous error: %v", unregErr)) <del> return unregErr </del> } return err } err = nim.InstallCSIDriver(pluginName, driverNodeID, maxVolumePerNode, accessibleTopology) if err != nil { <del> klog.Error(log("registrationHandler.RegisterPlugin failed at AddNodeInfo: %v", err)) </del> if unregErr := unregisterDriver(pluginName); unregErr != nil { klog.Error(log("registrationHandler.RegisterPlugin failed to unregister plugin due to previous error: %v", unregErr)) <del> return unregErr </del> } return err }
Code change:
<!-- Please only use this template for submitting reports about failing tests in Kubernetes CI jobs --Which jobs are failing: ci-kubernetes-e2e-gci-gce-serial Which test(s) are failing: LocalVolumeType: gce-localssd-scsi-fs Since when has it been failing: 2/20 Testgrid link: Reason for failure: unsure yet /assign
After , there are still two failing tests: For the first one, looks like reconstruction is not correctly implemented for local PVs: to check if it's ok for mounter to be initialized with an empty path the panic in the operation_generator
cc Unsure why it's failing only for this local pv type (real disk vs loopback block) I have not investigated the 2nd test yet
/priority critical-urgent /milestone v1.14 We're entering and this looks relevant to the 1.14 release. Please if I am incorrect
/assign
hi, checked , after , "should be mountable" has been fixed. failing test is "should unmount if pod is force deleted while kubelet is down [Disruptive][Slow]" and it fails for all kinds of local volume types
This is because local volume cannot be reconstructed for now (localPlugin.NewMounter requires field is set), so is going to . But uses to , and , so it panics here. I'm not sure how to support reconstruction for local volumes correctly yet. But we can fix this panic first, then reconciler will clean up the existing mount points if the volume is no longer needed. IIUC, this will fix this failing test. After this is fixed, if necessary we can revisit how to reconstruct local volumes correctly.
I see similar failures in and too; are they connected? cc
yes they should be similar
need to keep track of this to see if failures in and also clear up.
The tests are still throwing s in (it's the job there though). I've opened to track the failures in 1.14-blocking. They also seem to not have run since the 24th, I'll look into that in the meantime

Related discussion:
text: podsDir string) (volumetypes.GeneratedOperations, error) { var pluginName string <del> if useCSIPlugin(og.volumePluginMgr, volumeToUnmount.VolumeSpec) { </del> <ins> if volumeToUnmount.VolumeSpec != nil && useCSIPlugin(og.volumePluginMgr, volumeToUnmount.VolumeSpec) { </ins> pluginName = csi.CSIPluginName } else { pluginName = volumeToUnmount.PluginName
Code change:
Which jobs are failing: Tests which exec into containers and alter lifecycles Which test(s) are failing: All new tests introduced for api change which exec into containers New alpha subpathExpr tests [Feature:VolumeSubpathEnvExpansion][NodeAlphaFeature:VolumeSubpathEnvExpansion] Since when has it been failing: 27/February/2019 Testgrid link: https://k8s- Reason for failure: is only set in e2e tests and the binary is not available in node e2e tests Need to restructure and call the API rather than through the framework convenience function Anything else we need to know:
/sig node /sig storage /assign /cc

Related discussion:
text: By("creating a file in subpath") cmd := "touch /volume_mount/mypath/foo/test.log" <del> _, err = framework.RunHostCmd(pod.Namespace, pod.Name, cmd) </del> <ins> _, _, err = f.ExecShellInPodWithFullOutput(pod.Name, cmd) </ins> if err != nil { framework.Failf("expected to be able to write to subpath") } By("test for file in mounted path") cmd = "test -f /subpath_mount/test.log" <del> _, err = framework.RunHostCmd(pod.Namespace, pod.Name, cmd) </del> <ins> _, _, err = f.ExecShellInPodWithFullOutput(pod.Name, cmd) </ins> if err != nil { framework.Failf("expected to be able to verify file") }
Code change:
Which jobs are failing: Tests which exec into containers and alter lifecycles Which test(s) are failing: All new tests introduced for api change which exec into containers New alpha subpathExpr tests [Feature:VolumeSubpathEnvExpansion][NodeAlphaFeature:VolumeSubpathEnvExpansion] Since when has it been failing: 27/February/2019 Testgrid link: https://k8s- Reason for failure: is only set in e2e tests and the binary is not available in node e2e tests Need to restructure and call the API rather than through the framework convenience function Anything else we need to know:
/sig node /sig storage /assign /cc

Related discussion:
text: By("test for subpath mounted with old value") cmd := "test -f /volume_mount/foo/test.log" <del> _, err = framework.RunHostCmd(pod.Namespace, pod.Name, cmd) </del> <ins> _, _, err = f.ExecShellInPodWithFullOutput(pod.Name, cmd) </ins> if err != nil { framework.Failf("expected to be able to verify old file exists") } cmd = "test ! -f /volume_mount/newsubpath/test.log" <del> _, err = framework.RunHostCmd(pod.Namespace, pod.Name, cmd) </del> <ins> _, _, err = f.ExecShellInPodWithFullOutput(pod.Name, cmd) </ins> if err != nil { framework.Failf("expected to be able to verify new file does not exist") }
Code change:
Which jobs are failing: Tests which exec into containers and alter lifecycles Which test(s) are failing: All new tests introduced for api change which exec into containers New alpha subpathExpr tests [Feature:VolumeSubpathEnvExpansion][NodeAlphaFeature:VolumeSubpathEnvExpansion] Since when has it been failing: 27/February/2019 Testgrid link: https://k8s- Reason for failure: is only set in e2e tests and the binary is not available in node e2e tests Need to restructure and call the API rather than through the framework convenience function Anything else we need to know:
/sig node /sig storage /assign /cc

Related discussion:
text: func waitForPodContainerRestart(f *framework.Framework, pod *v1.Pod, volumeMount string) { By("Failing liveness probe") <del> out, err := framework.RunKubectl("exec", fmt.Sprintf("--namespace=%s", pod.Namespace), pod.Name, "--container", pod.Spec.Containers[0].Name, "--", "/bin/sh", "-c", fmt.Sprintf("rm %v", volumeMount)) </del> <ins> stdout, stderr, err := f.ExecShellInPodWithFullOutput(pod.Name, fmt.Sprintf("rm %v", volumeMount)) </ins> <del> framework.Logf("Pod exec output: %v", out) </del> <ins> framework.Logf("Pod exec output: %v / %v", stdout, stderr) </ins> Expect(err).ToNot(HaveOccurred(), "while failing liveness probe") // Check that container has restarted
Code change:
Which jobs are failing: Tests which exec into containers and alter lifecycles Which test(s) are failing: All new tests introduced for api change which exec into containers New alpha subpathExpr tests [Feature:VolumeSubpathEnvExpansion][NodeAlphaFeature:VolumeSubpathEnvExpansion] Since when has it been failing: 27/February/2019 Testgrid link: https://k8s- Reason for failure: is only set in e2e tests and the binary is not available in node e2e tests Need to restructure and call the API rather than through the framework convenience function Anything else we need to know:
/sig node /sig storage /assign /cc

Related discussion:
text: // Fix liveness probe By("Rewriting the file") <del> out, err = framework.RunKubectl("exec", fmt.Sprintf("--namespace=%s", pod.Namespace), pod.Name, "--container", pod.Spec.Containers[0].Name, "--", "/bin/sh", "-c", fmt.Sprintf("echo test-after > %v", volumeMount)) framework.Logf("Pod exec output: %v", out) </del> <ins> stdout, _, err = f.ExecShellInPodWithFullOutput(pod.Name, fmt.Sprintf("echo test-after > %v", volumeMount)) framework.Logf("Pod exec output: %v", stdout) </ins> Expect(err).ToNot(HaveOccurred(), "while rewriting the probe file") // Wait for container restarts to stabilize
Code change:
<!-- Please use this template while reporting a bug and provide as much info as possible. Not doing so may result in your bug not being addressed in a timely manner. Thanks! If the matter is security related, please disclose it privately via --What happened: Running the vSphere cloud provider on a windows node throws the following error: This is because the vm identifier is retrieved with the command - , which assumes that the uuid and serial are the same. On some vmware vm versions, the uuid and serial are not the same. vmware (comment), vmware (comment) What you expected to happen: Kubelet is able to find vm in vCenter from the identifier looked up on the node. or should be used instead to find the vm identifier. How to reproduce it (as minimally and precisely as possible): Issue only occurs on some vm versions, such as 13. Anything else we need to know?: On the linux side, this issue was resolved by switching from looking up the id from to . See Some discussion about this issue here - Environment: Kubernetes version (use ): 14.0-beta.1 Cloud provider or hardware configuration: Vsphere OS (e.g: ): Windows 2019 Kernel (e.g. ): Install tools: Others:
/sig windows /sig vmware
/milestone v1.14
You must be a member of the GitHub team to set the milestone. If you believe you should be able to issue the /milestone command, please contact your and have them propose you as an additional delegate for this responsibility. <detailsIn response to : /milestone v1.14 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
/assign

Related discussion:
text: DummyDiskName         = "kube-dummyDisk.vmdk" ProviderPrefix        = "vsphere://" vSphereConfFileEnvVar = "VSPHERE_CONF_FILE" <ins> UUIDPrefix            = "VMware-" </ins> ) // GetVSphere reads vSphere configuration from system environment and construct vSphere object
Code change:
<!-- Please use this template while reporting a bug and provide as much info as possible. Not doing so may result in your bug not being addressed in a timely manner. Thanks! If the matter is security related, please disclose it privately via --What happened: Running the vSphere cloud provider on a windows node throws the following error: This is because the vm identifier is retrieved with the command - , which assumes that the uuid and serial are the same. On some vmware vm versions, the uuid and serial are not the same. vmware (comment), vmware (comment) What you expected to happen: Kubelet is able to find vm in vCenter from the identifier looked up on the node. or should be used instead to find the vm identifier. How to reproduce it (as minimally and precisely as possible): Issue only occurs on some vm versions, such as 13. Anything else we need to know?: On the linux side, this issue was resolved by switching from looking up the id from to . See Some discussion about this issue here - Environment: Kubernetes version (use ): 14.0-beta.1 Cloud provider or hardware configuration: Vsphere OS (e.g: ): Windows 2019 Kernel (e.g. ): Install tools: Others:
/sig windows /sig vmware
/milestone v1.14
You must be a member of the GitHub team to set the milestone. If you believe you should be able to issue the /milestone command, please contact your and have them propose you as an additional delegate for this responsibility. <detailsIn response to : /milestone v1.14 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
/assign

Related discussion:
text: } return GetUUIDFromProviderID(node.Spec.ProviderID), nil } <ins> func GetVMUUID() (string, error) { uuidFromFile, err := getRawUUID() if err != nil { return "", fmt.Errorf("error retrieving vm uuid: %s", err) } //strip leading and trailing white space and new line char uuid := strings.TrimSpace(uuidFromFile) // check the uuid starts with "VMware-" if !strings.HasPrefix(uuid, UUIDPrefix) { return "", fmt.Errorf("Failed to match Prefix, UUID read from the file is %v", uuidFromFile) } // Strip the prefix and white spaces and - uuid = strings.Replace(uuid[len(UUIDPrefix):(len(uuid))], " ", "", -1) uuid = strings.Replace(uuid, "-", "", -1) if len(uuid) != 32 { return "", fmt.Errorf("Length check failed, UUID read from the file is %v", uuidFromFile) } // need to add dashes, e.g. "564d395e-d807-e18a-cb25-b79f65eb2b9f" uuid = fmt.Sprintf("%s-%s-%s-%s-%s", uuid[0:8], uuid[8:12], uuid[12:16], uuid[16:20], uuid[20:32]) return uuid, nil } </ins>
Code change:
<!-- Please use this template while reporting a bug and provide as much info as possible. Not doing so may result in your bug not being addressed in a timely manner. Thanks! If the matter is security related, please disclose it privately via --What happened: Running the vSphere cloud provider on a windows node throws the following error: This is because the vm identifier is retrieved with the command - , which assumes that the uuid and serial are the same. On some vmware vm versions, the uuid and serial are not the same. vmware (comment), vmware (comment) What you expected to happen: Kubelet is able to find vm in vCenter from the identifier looked up on the node. or should be used instead to find the vm identifier. How to reproduce it (as minimally and precisely as possible): Issue only occurs on some vm versions, such as 13. Anything else we need to know?: On the linux side, this issue was resolved by switching from looking up the id from to . See Some discussion about this issue here - Environment: Kubernetes version (use ): 14.0-beta.1 Cloud provider or hardware configuration: Vsphere OS (e.g: ): Windows 2019 Kernel (e.g. ): Install tools: Others:
/sig windows /sig vmware
/milestone v1.14
You must be a member of the GitHub team to set the milestone. If you believe you should be able to issue the /milestone command, please contact your and have them propose you as an additional delegate for this responsibility. <detailsIn response to : /milestone v1.14 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
/assign

Related discussion:
text: package vsphere import ( <del> "fmt" </del> "io/ioutil" <del> "strings" </del> ) <del> const ( UUIDPath   = "/sys/class/dmi/id/product_serial" UUIDPrefix = "VMware-" ) </del> <ins> const UUIDPath = "/sys/class/dmi/id/product_serial" </ins> <del> func GetVMUUID() (string, error) { </del> <ins> func getRawUUID() (string, error) { </ins> id, err := ioutil.ReadFile(UUIDPath) if err != nil { <del> return "", fmt.Errorf("error retrieving vm uuid: %s", err) } uuidFromFile := string(id[:]) //strip leading and trailing white space and new line char uuid := strings.TrimSpace(uuidFromFile) // check the uuid starts with "VMware-" if !strings.HasPrefix(uuid, UUIDPrefix) { return "", fmt.Errorf("Failed to match Prefix, UUID read from the file is %v", uuidFromFile) } // Strip the prefix and white spaces and - uuid = strings.Replace(uuid[len(UUIDPrefix):(len(uuid))], " ", "", -1) uuid = strings.Replace(uuid, "-", "", -1) if len(uuid) != 32 { return "", fmt.Errorf("Length check failed, UUID read from the file is %v", uuidFromFile) </del> <ins> return "", err </ins> } <del> // need to add dashes, e.g. "564d395e-d807-e18a-cb25-b79f65eb2b9f" uuid = fmt.Sprintf("%s-%s-%s-%s-%s", uuid[0:8], uuid[8:12], uuid[12:16], uuid[16:20], uuid[20:32]) return uuid, nil </del> <ins> return string(id), nil </ins> }
Code change:
<!-- Please use this template while reporting a bug and provide as much info as possible. Not doing so may result in your bug not being addressed in a timely manner. Thanks! If the matter is security related, please disclose it privately via --What happened: Running the vSphere cloud provider on a windows node throws the following error: This is because the vm identifier is retrieved with the command - , which assumes that the uuid and serial are the same. On some vmware vm versions, the uuid and serial are not the same. vmware (comment), vmware (comment) What you expected to happen: Kubelet is able to find vm in vCenter from the identifier looked up on the node. or should be used instead to find the vm identifier. How to reproduce it (as minimally and precisely as possible): Issue only occurs on some vm versions, such as 13. Anything else we need to know?: On the linux side, this issue was resolved by switching from looking up the id from to . See Some discussion about this issue here - Environment: Kubernetes version (use ): 14.0-beta.1 Cloud provider or hardware configuration: Vsphere OS (e.g: ): Windows 2019 Kernel (e.g. ): Install tools: Others:
/sig windows /sig vmware
/milestone v1.14
You must be a member of the GitHub team to set the milestone. If you believe you should be able to issue the /milestone command, please contact your and have them propose you as an additional delegate for this responsibility. <detailsIn response to : /milestone v1.14 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
/assign

Related discussion:
text: import "fmt" <del> func GetVMUUID() (string, error) { </del> <ins> func getRawUUID() (string, error) { </ins> return "", fmt.Errorf("Retrieving VM UUID on this build is not implemented.") }
Code change:
<!-- Please use this template while reporting a bug and provide as much info as possible. Not doing so may result in your bug not being addressed in a timely manner. Thanks! If the matter is security related, please disclose it privately via --What happened: Running the vSphere cloud provider on a windows node throws the following error: This is because the vm identifier is retrieved with the command - , which assumes that the uuid and serial are the same. On some vmware vm versions, the uuid and serial are not the same. vmware (comment), vmware (comment) What you expected to happen: Kubelet is able to find vm in vCenter from the identifier looked up on the node. or should be used instead to find the vm identifier. How to reproduce it (as minimally and precisely as possible): Issue only occurs on some vm versions, such as 13. Anything else we need to know?: On the linux side, this issue was resolved by switching from looking up the id from to . See Some discussion about this issue here - Environment: Kubernetes version (use ): 14.0-beta.1 Cloud provider or hardware configuration: Vsphere OS (e.g: ): Windows 2019 Kernel (e.g. ): Install tools: Others:
/sig windows /sig vmware
/milestone v1.14
You must be a member of the GitHub team to set the milestone. If you believe you should be able to issue the /milestone command, please contact your and have them propose you as an additional delegate for this responsibility. <detailsIn response to : /milestone v1.14 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
/assign

Related discussion:
text: "strings" ) <del> func GetVMUUID() (string, error) { result, err := exec.Command("wmic", "csproduct", "get", "UUID").Output() </del> <ins> func getRawUUID() (string, error) { result, err := exec.Command("wmic", "bios", "get", "serialnumber").Output() </ins> if err != nil { <del> return "", fmt.Errorf("error retrieving vm uuid: %s", err) </del> <ins> return "", err </ins> } <del> fields := strings.Fields(string(result)) if len(fields) != 2 { </del> <ins> lines := strings.FieldsFunc(string(result), func(r rune) bool { switch r { case 'n', 'r': return true default: return false } }) if len(lines) != 2 { </ins> return "", fmt.Errorf("received unexpected value retrieving vm uuid: %q", string(result)) } <del> return fields[1], nil </del> <ins> return lines[1], nil </ins> }
Code change:
xref In 1.16: change the metadata-proxy addon to use change the kube-proxy addon to use change the masq-agent addon to use stop setting , , and in kube-up
Hey I'm trying to start to contribute to kubernetes and this seem to be an easy task. Can I help with this one?

Related discussion:
text: - name: config mountPath: /etc/config nodeSelector: <del> # TODO(liggitt): switch to node.kubernetes.io/masq-agent-ds-ready in 1.16 beta.kubernetes.io/masq-agent-ds-ready: "true" </del> <ins> node.kubernetes.io/masq-agent-ds-ready: "true" </ins> volumes: - name: config configMap:
Code change:
xref In 1.16: change the metadata-proxy addon to use change the kube-proxy addon to use change the masq-agent addon to use stop setting , , and in kube-up
Hey I'm trying to start to contribute to kubernetes and this seem to be an easy task. Can I help with this one?

Related discussion:
text: priorityClassName: system-node-critical hostNetwork: true nodeSelector: <del> # TODO(liggitt): switch to node.kubernetes.io/kube-proxy-ds-ready in 1.16 beta.kubernetes.io/kube-proxy-ds-ready: "true" </del> <ins> node.kubernetes.io/kube-proxy-ds-ready: "true" </ins> tolerations: - operator: "Exists" effect: "NoExecute"
Code change:
xref In 1.16: change the metadata-proxy addon to use change the kube-proxy addon to use change the masq-agent addon to use stop setting , , and in kube-up
Hey I'm trying to start to contribute to kubernetes and this seem to be an easy task. Can I help with this one?

Related discussion:
text: fieldPath: metadata.namespace # END_PROMETHEUS_TO_SD nodeSelector: <del> # TODO(liggitt): switch to cloud.google.com/metadata-proxy-ready=true in v1.16 beta.kubernetes.io/metadata-proxy-ready: "true" </del> <ins> cloud.google.com/metadata-proxy-ready: "true" </ins> beta.kubernetes.io/os: linux terminationGracePeriodSeconds: 30