Prechádzať zdrojové kódy

Merge pull request #18727 from tonistiigi/partial-load

Add support for partial load
David Calavera 9 rokov pred
rodič
commit
6ee7c94263
1 zmenil súbory, kde vykonal 7 pridanie a 2 odobranie
  1. 7 2
      image/tarexport/load.go

+ 7 - 2
image/tarexport/load.go

@@ -73,9 +73,14 @@ func (l *tarexporter) Load(inTar io.ReadCloser, outStream io.Writer) error {
 			if err != nil {
 			if err != nil {
 				return err
 				return err
 			}
 			}
-			newLayer, err := l.loadLayer(layerPath, rootFS)
+			r := rootFS
+			r.Append(diffID)
+			newLayer, err := l.ls.Get(r.ChainID())
 			if err != nil {
 			if err != nil {
-				return err
+				newLayer, err = l.loadLayer(layerPath, rootFS)
+				if err != nil {
+					return err
+				}
 			}
 			}
 			defer layer.ReleaseAndLog(l.ls, newLayer)
 			defer layer.ReleaseAndLog(l.ls, newLayer)
 			if expected, actual := diffID, newLayer.DiffID(); expected != actual {
 			if expected, actual := diffID, newLayer.DiffID(); expected != actual {