diff --git a/OWNERS b/OWNERS index b1bd5a24..db880eaa 100644 --- a/OWNERS +++ b/OWNERS @@ -1,9 +1,10 @@ # See the OWNERS docs at https://go.k8s.io/owners approvers: - - wongma7 + - ashishranjan738 + - humblec + - jackielii - jsafrane - kmova - - jackielii - - ashishranjan738 - yonatankahana + - wongma7 diff --git a/cmd/nfs-subdir-external-provisioner/provisioner.go b/cmd/nfs-subdir-external-provisioner/provisioner.go index 2d357c11..cd990e15 100644 --- a/cmd/nfs-subdir-external-provisioner/provisioner.go +++ b/cmd/nfs-subdir-external-provisioner/provisioner.go @@ -62,13 +62,14 @@ func (meta *pvcMetadata) stringParser(str string) string { for _, r := range result { switch r[2] { case "labels": - str = strings.Replace(str, r[0], meta.labels[r[3]], -1) + str = strings.ReplaceAll(str, r[0], meta.labels[r[3]]) case "annotations": - str = strings.Replace(str, r[0], meta.annotations[r[3]], -1) + str = strings.ReplaceAll(str, r[0], meta.annotations[r[3]]) default: - str = strings.Replace(str, r[0], meta.data[r[1]], -1) + str = strings.ReplaceAll(str, r[0], meta.data[r[1]]) } } + return str } @@ -111,10 +112,13 @@ func (p *nfsProvisioner) Provision(ctx context.Context, options controller.Provi } glog.V(4).Infof("creating path %s", fullPath) - if err := os.MkdirAll(fullPath, 0777); err != nil { + if err := os.MkdirAll(fullPath, 0o777); err != nil { return nil, controller.ProvisioningFinished, errors.New("unable to create directory to provision new pv: " + err.Error()) } - os.Chmod(fullPath, 0777) + err := os.Chmod(fullPath, 0o777) + if err != nil { + return nil, "", err + } pv := &v1.PersistentVolume{ ObjectMeta: metav1.ObjectMeta{ @@ -155,14 +159,12 @@ func (p *nfsProvisioner) Delete(ctx context.Context, volume *v1.PersistentVolume } // Determine if the "onDelete" parameter exists. - // If it exists and has a delete value, delete the directory. - // If it exists and has a retain value, safe the directory. + // If it exists and has a `delete` value, delete the directory. + // If it exists and has a `retain` value, safe the directory. onDelete := storageClass.Parameters["onDelete"] switch onDelete { - case "delete": return os.RemoveAll(oldPath) - case "retain": return nil } @@ -186,19 +188,20 @@ func (p *nfsProvisioner) Delete(ctx context.Context, volume *v1.PersistentVolume return os.Rename(oldPath, archivePath) } -// getClassForVolume returns StorageClass +// getClassForVolume returns StorageClass. func (p *nfsProvisioner) getClassForVolume(ctx context.Context, pv *v1.PersistentVolume) (*storage.StorageClass, error) { if p.client == nil { - return nil, fmt.Errorf("Cannot get kube client") + return nil, fmt.Errorf("cannot get kube client") } className := helper.GetPersistentVolumeClass(pv) if className == "" { - return nil, fmt.Errorf("Volume has no storage class") + return nil, fmt.Errorf("volume has no storage class") } class, err := p.client.StorageV1().StorageClasses().Get(ctx, className, metav1.GetOptions{}) if err != nil { return nil, err } + return class, nil }