mirror of
https://github.com/containers/podman.git
synced 2025-06-23 18:59:30 +08:00
search: allow wildcards
Allow wildcards in the search term. Note that not all registries support wildcards and it may only work with v1 registries. Note that searching implies figuring out if the specified search term includes a registry. If there's not registry detected, the search term will be used against all configured "unqualified-serach-registries" in the registries.conf. The parsing logic considers a registry to be the substring before the first slash `/`. With these changes we now not only support wildcards but arbitrary input; ultimately it's up to the registries to decide whether they support given input or not. Fixes: bugzilla.redhat.com/show_bug.cgi?id=1846629 Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
This commit is contained in:
@ -3,12 +3,10 @@ package registries
|
||||
import (
|
||||
"os"
|
||||
"path/filepath"
|
||||
"strings"
|
||||
|
||||
"github.com/containers/image/v5/pkg/sysregistriesv2"
|
||||
"github.com/containers/image/v5/types"
|
||||
"github.com/containers/libpod/pkg/rootless"
|
||||
"github.com/docker/distribution/reference"
|
||||
"github.com/pkg/errors"
|
||||
)
|
||||
|
||||
@ -77,17 +75,3 @@ func GetInsecureRegistries() ([]string, error) {
|
||||
}
|
||||
return insecureRegistries, nil
|
||||
}
|
||||
|
||||
// GetRegistry returns the registry name from a string if specified
|
||||
func GetRegistry(image string) (string, error) {
|
||||
// It is possible to only have the registry name in the format "myregistry/"
|
||||
// if so, just trim the "/" from the end and return the registry name
|
||||
if strings.HasSuffix(image, "/") {
|
||||
return strings.TrimSuffix(image, "/"), nil
|
||||
}
|
||||
imgRef, err := reference.Parse(image)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
return reference.Domain(imgRef.(reference.Named)), nil
|
||||
}
|
||||
|
Reference in New Issue
Block a user