зеркало из https://github.com/microsoft/docker.git
Merge pull request #12532 from ankushagarwal/eliminate-json-marshal
Eliminate json.Marshal from graph/export.go and volumes/volume.go
This commit is contained in:
Коммит
531ec3cac9
|
@ -83,8 +83,15 @@ func (s *TagStore) ImageExport(imageExportConfig *ImageExportConfig) error {
|
||||||
}
|
}
|
||||||
// write repositories, if there is something to write
|
// write repositories, if there is something to write
|
||||||
if len(rootRepoMap) > 0 {
|
if len(rootRepoMap) > 0 {
|
||||||
rootRepoJson, _ := json.Marshal(rootRepoMap)
|
f, err := os.OpenFile(path.Join(tempdir, "repositories"), os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0644)
|
||||||
if err := ioutil.WriteFile(path.Join(tempdir, "repositories"), rootRepoJson, os.FileMode(0644)); err != nil {
|
if err != nil {
|
||||||
|
f.Close()
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
if err := json.NewEncoder(f).Encode(rootRepoMap); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
if err := f.Close(); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -2,7 +2,6 @@ package volumes
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"io/ioutil"
|
|
||||||
"os"
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
"sync"
|
"sync"
|
||||||
|
@ -81,17 +80,19 @@ func (v *Volume) ToDisk() error {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (v *Volume) toDisk() error {
|
func (v *Volume) toDisk() error {
|
||||||
data, err := json.Marshal(v)
|
jsonPath, err := v.jsonPath()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
f, err := os.OpenFile(jsonPath, os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0644)
|
||||||
pth, err := v.jsonPath()
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
if err := json.NewEncoder(f).Encode(v); err != nil {
|
||||||
return ioutil.WriteFile(pth, data, 0666)
|
f.Close()
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
return f.Close()
|
||||||
}
|
}
|
||||||
|
|
||||||
func (v *Volume) FromDisk() error {
|
func (v *Volume) FromDisk() error {
|
||||||
|
|
Загрузка…
Ссылка в новой задаче