Merge pull request #25316 from cpuguy83/25310_persit_volume_opts
Fix issue reloading mount options on restart
This commit is contained in:
commit
2011320fa9
2 changed files with 18 additions and 1 deletions
volume/local
|
@ -88,7 +88,9 @@ func New(scope string, rootUID, rootGID int) (*Root, error) {
|
|||
path: r.DataPath(name),
|
||||
}
|
||||
r.volumes[name] = v
|
||||
if b, err := ioutil.ReadFile(filepath.Join(name, "opts.json")); err == nil {
|
||||
optsFilePath := filepath.Join(rootDirectory, name, "opts.json")
|
||||
if b, err := ioutil.ReadFile(optsFilePath); err == nil {
|
||||
v.opts = &optsConfig{}
|
||||
if err := json.Unmarshal(b, v.opts); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -3,6 +3,7 @@ package local
|
|||
import (
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"reflect"
|
||||
"runtime"
|
||||
"strings"
|
||||
"testing"
|
||||
|
@ -246,4 +247,18 @@ func TestCreateWithOpts(t *testing.T) {
|
|||
if !mounted {
|
||||
t.Fatal("expected mount to still be active")
|
||||
}
|
||||
|
||||
r, err = New(rootDir, 0, 0)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
v2, exists := r.volumes["test"]
|
||||
if !exists {
|
||||
t.Fatal("missing volume on restart")
|
||||
}
|
||||
|
||||
if !reflect.DeepEqual(v.opts, v2.opts) {
|
||||
t.Fatal("missing volume options on restart")
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue