mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-23 19:56:01 +00:00
add namespace in azurefile volumeid
This commit is contained in:
parent
fdadc95d65
commit
c2aba4901a
@ -34,7 +34,7 @@ const (
|
|||||||
AzureFileInTreePluginName = "kubernetes.io/azure-file"
|
AzureFileInTreePluginName = "kubernetes.io/azure-file"
|
||||||
|
|
||||||
separator = "#"
|
separator = "#"
|
||||||
volumeIDTemplate = "%s#%s#%s#%s"
|
volumeIDTemplate = "%s#%s#%s#%s#%s"
|
||||||
// Parameter names defined in azure file CSI driver, refer to
|
// Parameter names defined in azure file CSI driver, refer to
|
||||||
// https://github.com/kubernetes-sigs/azurefile-csi-driver/blob/master/docs/driver-parameters.md
|
// https://github.com/kubernetes-sigs/azurefile-csi-driver/blob/master/docs/driver-parameters.md
|
||||||
shareNameField = "sharename"
|
shareNameField = "sharename"
|
||||||
@ -81,7 +81,7 @@ func (t *azureFileCSITranslator) TranslateInTreeInlineVolumeToCSI(volume *v1.Vol
|
|||||||
if podNamespace != "" {
|
if podNamespace != "" {
|
||||||
secretNamespace = podNamespace
|
secretNamespace = podNamespace
|
||||||
}
|
}
|
||||||
volumeID := fmt.Sprintf(volumeIDTemplate, "", accountName, azureSource.ShareName, volume.Name)
|
volumeID := fmt.Sprintf(volumeIDTemplate, "", accountName, azureSource.ShareName, volume.Name, secretNamespace)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
pv = &v1.PersistentVolume{
|
pv = &v1.PersistentVolume{
|
||||||
@ -129,7 +129,12 @@ func (t *azureFileCSITranslator) TranslateInTreePVToCSI(pv *v1.PersistentVolume)
|
|||||||
resourceGroup = v
|
resourceGroup = v
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
volumeID := fmt.Sprintf(volumeIDTemplate, resourceGroup, accountName, azureSource.ShareName, pv.ObjectMeta.Name)
|
namespace := defaultSecretNamespace
|
||||||
|
if azureSource.SecretNamespace != nil {
|
||||||
|
namespace = *azureSource.SecretNamespace
|
||||||
|
}
|
||||||
|
|
||||||
|
volumeID := fmt.Sprintf(volumeIDTemplate, resourceGroup, accountName, azureSource.ShareName, pv.ObjectMeta.Name, namespace)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
// refer to https://github.com/kubernetes-sigs/azurefile-csi-driver/blob/master/docs/driver-parameters.md
|
// refer to https://github.com/kubernetes-sigs/azurefile-csi-driver/blob/master/docs/driver-parameters.md
|
||||||
@ -137,7 +142,7 @@ func (t *azureFileCSITranslator) TranslateInTreePVToCSI(pv *v1.PersistentVolume)
|
|||||||
Driver: AzureFileDriverName,
|
Driver: AzureFileDriverName,
|
||||||
NodeStageSecretRef: &v1.SecretReference{
|
NodeStageSecretRef: &v1.SecretReference{
|
||||||
Name: azureSource.SecretName,
|
Name: azureSource.SecretName,
|
||||||
Namespace: defaultSecretNamespace,
|
Namespace: namespace,
|
||||||
},
|
},
|
||||||
ReadOnly: azureSource.ReadOnly,
|
ReadOnly: azureSource.ReadOnly,
|
||||||
VolumeAttributes: map[string]string{shareNameField: azureSource.ShareName},
|
VolumeAttributes: map[string]string{shareNameField: azureSource.ShareName},
|
||||||
@ -145,10 +150,6 @@ func (t *azureFileCSITranslator) TranslateInTreePVToCSI(pv *v1.PersistentVolume)
|
|||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
if azureSource.SecretNamespace != nil {
|
|
||||||
csiSource.NodeStageSecretRef.Namespace = *azureSource.SecretNamespace
|
|
||||||
}
|
|
||||||
|
|
||||||
pv.Spec.PersistentVolumeSource.AzureFile = nil
|
pv.Spec.PersistentVolumeSource.AzureFile = nil
|
||||||
pv.Spec.PersistentVolumeSource.CSI = csiSource
|
pv.Spec.PersistentVolumeSource.CSI = csiSource
|
||||||
|
|
||||||
|
@ -131,7 +131,7 @@ func TestTranslateAzureFileInTreeStorageClassToCSI(t *testing.T) {
|
|||||||
},
|
},
|
||||||
expVol: &corev1.PersistentVolume{
|
expVol: &corev1.PersistentVolume{
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
Name: "#secretname#sharename#name",
|
Name: "#secretname#sharename#name#default",
|
||||||
},
|
},
|
||||||
Spec: corev1.PersistentVolumeSpec{
|
Spec: corev1.PersistentVolumeSpec{
|
||||||
PersistentVolumeSource: corev1.PersistentVolumeSource{
|
PersistentVolumeSource: corev1.PersistentVolumeSource{
|
||||||
@ -143,7 +143,7 @@ func TestTranslateAzureFileInTreeStorageClassToCSI(t *testing.T) {
|
|||||||
},
|
},
|
||||||
ReadOnly: true,
|
ReadOnly: true,
|
||||||
VolumeAttributes: map[string]string{shareNameField: "sharename"},
|
VolumeAttributes: map[string]string{shareNameField: "sharename"},
|
||||||
VolumeHandle: "#secretname#sharename#name",
|
VolumeHandle: "#secretname#sharename#name#default",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
AccessModes: []corev1.PersistentVolumeAccessMode{corev1.ReadWriteMany},
|
AccessModes: []corev1.PersistentVolumeAccessMode{corev1.ReadWriteMany},
|
||||||
@ -165,7 +165,7 @@ func TestTranslateAzureFileInTreeStorageClassToCSI(t *testing.T) {
|
|||||||
podNamespace: "test",
|
podNamespace: "test",
|
||||||
expVol: &corev1.PersistentVolume{
|
expVol: &corev1.PersistentVolume{
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
Name: "#secretname#sharename#name",
|
Name: "#secretname#sharename#name#test",
|
||||||
},
|
},
|
||||||
Spec: corev1.PersistentVolumeSpec{
|
Spec: corev1.PersistentVolumeSpec{
|
||||||
PersistentVolumeSource: corev1.PersistentVolumeSource{
|
PersistentVolumeSource: corev1.PersistentVolumeSource{
|
||||||
@ -177,7 +177,7 @@ func TestTranslateAzureFileInTreeStorageClassToCSI(t *testing.T) {
|
|||||||
},
|
},
|
||||||
ReadOnly: true,
|
ReadOnly: true,
|
||||||
VolumeAttributes: map[string]string{shareNameField: "sharename"},
|
VolumeAttributes: map[string]string{shareNameField: "sharename"},
|
||||||
VolumeHandle: "#secretname#sharename#name",
|
VolumeHandle: "#secretname#sharename#name#test",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
AccessModes: []corev1.PersistentVolumeAccessMode{corev1.ReadWriteMany},
|
AccessModes: []corev1.PersistentVolumeAccessMode{corev1.ReadWriteMany},
|
||||||
@ -254,7 +254,7 @@ func TestTranslateAzureFileInTreePVToCSI(t *testing.T) {
|
|||||||
Namespace: secretNamespace,
|
Namespace: secretNamespace,
|
||||||
},
|
},
|
||||||
VolumeAttributes: map[string]string{shareNameField: "sharename"},
|
VolumeAttributes: map[string]string{shareNameField: "sharename"},
|
||||||
VolumeHandle: "#secretname#sharename#uuid",
|
VolumeHandle: "#secretname#sharename#uuid#secretnamespace",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@ -293,7 +293,7 @@ func TestTranslateAzureFileInTreePVToCSI(t *testing.T) {
|
|||||||
Namespace: secretNamespace,
|
Namespace: secretNamespace,
|
||||||
},
|
},
|
||||||
VolumeAttributes: map[string]string{shareNameField: "sharename"},
|
VolumeAttributes: map[string]string{shareNameField: "sharename"},
|
||||||
VolumeHandle: "rg#secretname#sharename#uuid",
|
VolumeHandle: "rg#secretname#sharename#uuid#secretnamespace",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
Loading…
Reference in New Issue
Block a user