From dabf8ce60df9760ea0bd1d7f9a3f975b41f30f91 Mon Sep 17 00:00:00 2001 From: kakazhou Date: Wed, 12 Jul 2023 17:00:41 +0800 Subject: [PATCH] bugfix: use instance name as saved name (#2260) Signed-off-by: kakazhou --- pkg/imageengine/buildah/save.go | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/pkg/imageengine/buildah/save.go b/pkg/imageengine/buildah/save.go index 84744e34224..3fbe5a34094 100644 --- a/pkg/imageengine/buildah/save.go +++ b/pkg/imageengine/buildah/save.go @@ -109,15 +109,25 @@ func (engine *Engine) Save(opts *options.SaveOptions) error { if err != nil { return err } + if len(images) == 0 { return fmt.Errorf("no image matched with digest %s", instanceDigest) } - instanceTar := filepath.Join(tempDir, images[0].ID+".tar") - err = engine.saveOneImage(images[0].ID, opts.Format, instanceTar, opts.Compress) + instance := images[0] + instanceTar := filepath.Join(tempDir, instance.ID+".tar") + + // if instance has "Names", use the first one as saved name + instanceName := instance.ID + if len(instance.Names) > 0 { + instanceName = instance.Names[0] + } + + err = engine.saveOneImage(instanceName, opts.Format, instanceTar, opts.Compress) if err != nil { return err } + pathsToCompress = append(pathsToCompress, instanceTar) }