44 lines
1.2 KiB
Diff
44 lines
1.2 KiB
Diff
|
|
From d6c302a3d5563286614c59a442f4cd65a8351ce2 Mon Sep 17 00:00:00 2001
|
||
|
|
From: DCCooper <1866858@gmail.com>
|
||
|
|
Date: Tue, 2 Nov 2021 20:54:24 +0800
|
||
|
|
Subject: [PATCH 1/2] bugfix: fix random sequence for saving separated image
|
||
|
|
tarball
|
||
|
|
|
||
|
|
reason: sort the map key and read the key in alohabetical orger
|
||
|
|
|
||
|
|
Signed-off-by: DCCooper <1866858@gmail.com>
|
||
|
|
---
|
||
|
|
daemon/save.go | 9 ++++++++-
|
||
|
|
1 file changed, 8 insertions(+), 1 deletion(-)
|
||
|
|
|
||
|
|
diff --git a/daemon/save.go b/daemon/save.go
|
||
|
|
index ecac5b6..9ad4e03 100644
|
||
|
|
--- a/daemon/save.go
|
||
|
|
+++ b/daemon/save.go
|
||
|
|
@@ -20,6 +20,7 @@ import (
|
||
|
|
"io/ioutil"
|
||
|
|
"os"
|
||
|
|
"path/filepath"
|
||
|
|
+ "sort"
|
||
|
|
"strings"
|
||
|
|
|
||
|
|
"github.com/containers/image/v5/docker/reference"
|
||
|
|
@@ -513,7 +514,13 @@ func (s *separatorSave) processImageLayers(imgInfos map[string]imageInfo) error
|
||
|
|
libImagesMap = make(imageLayersMap, 1)
|
||
|
|
appImagesMap = make(imageLayersMap, 1)
|
||
|
|
)
|
||
|
|
- for _, info := range imgInfos {
|
||
|
|
+ var sortedKey []string
|
||
|
|
+ for k := range imgInfos {
|
||
|
|
+ sortedKey = append(sortedKey, k)
|
||
|
|
+ }
|
||
|
|
+ sort.Strings(sortedKey)
|
||
|
|
+ for _, k := range sortedKey {
|
||
|
|
+ info := imgInfos[k]
|
||
|
|
if err := s.clearDirs(true); err != nil {
|
||
|
|
return errors.Wrap(err, "clear tmp dirs failed")
|
||
|
|
}
|
||
|
|
--
|
||
|
|
1.8.3.1
|
||
|
|
|