Change volume.NewBuild arg from podUID to ObjectReference

This commit is contained in:
markturansky
2015-03-10 13:47:56 -04:00
parent 7aa060bae7
commit c7e619d4a0
13 changed files with 39 additions and 33 deletions

View File

@@ -53,7 +53,7 @@ func (vh *volumeHost) GetKubeClient() client.Interface {
return vh.kubelet.kubeClient
}
func (kl *Kubelet) newVolumeBuilderFromPlugins(spec *api.Volume, podUID types.UID) volume.Builder {
func (kl *Kubelet) newVolumeBuilderFromPlugins(spec *api.Volume, podRef *api.ObjectReference) volume.Builder {
plugin, err := kl.volumePluginMgr.FindPluginBySpec(spec)
if err != nil {
glog.Warningf("Can't use volume plugins for %s: %v", spew.Sprintf("%#v", *spec), err)
@@ -63,7 +63,7 @@ func (kl *Kubelet) newVolumeBuilderFromPlugins(spec *api.Volume, podUID types.UI
glog.Errorf("No error, but nil volume plugin for %s", spew.Sprintf("%#v", *spec))
return nil
}
builder, err := plugin.NewBuilder(spec, podUID)
builder, err := plugin.NewBuilder(spec, podRef)
if err != nil {
glog.Warningf("Error instantiating volume plugin for %s: %v", spew.Sprintf("%#v", *spec), err)
return nil
@@ -77,12 +77,18 @@ func (kl *Kubelet) mountExternalVolumes(pod *api.BoundPod) (volumeMap, error) {
for i := range pod.Spec.Volumes {
volSpec := &pod.Spec.Volumes[i]
podRef, err := api.GetReference(pod)
if err != nil {
glog.Errorf("Error getting object reference for pod: %v", pod, err)
return nil, err
}
// Try to use a plugin for this volume.
builder := kl.newVolumeBuilderFromPlugins(volSpec, pod.UID)
builder := kl.newVolumeBuilderFromPlugins(volSpec, podRef)
if builder == nil {
return nil, errUnsupportedVolumeType
}
err := builder.SetUp()
err = builder.SetUp()
if err != nil {
return nil, err
}