util: allow pulling from local registry

before a command like
linuxkit cache pull 127.0.0.1:5000/pkgalpine

would result in trying to pull the following image:
docker.io/127.0.0.1:5000/pkgalpine

and this is wrong

Signed-off-by: Christoph Ostarek <christoph@zededa.com>
This commit is contained in:
Christoph Ostarek 2024-03-15 18:33:50 +01:00
parent 1b1007a9da
commit 4496612c70

View File

@ -1,6 +1,8 @@
package util package util
import "strings" import (
"strings"
)
type refOpts struct { type refOpts struct {
withTag bool withTag bool
@ -21,16 +23,13 @@ func ReferenceExpand(ref string, options ...ReferenceOption) string {
for _, opt := range options { for _, opt := range options {
opt(&opts) opt(&opts)
} }
var ret string ret := ref
parts := strings.Split(ref, "/") parts := strings.Split(ref, "/")
switch len(parts) { if len(parts) == 1 {
case 1:
ret = "docker.io/library/" + ref ret = "docker.io/library/" + ref
case 2:
ret = "docker.io/" + ref
default:
ret = ref
} }
if opts.withTag && !strings.Contains(ret, ":") { if opts.withTag && !strings.Contains(ret, ":") {
ret += ":latest" ret += ":latest"
} }