mirror of
https://github.com/containers/podman.git
synced 2025-10-20 04:34:01 +08:00
Merge pull request #13614 from vrothberg/backport
[v4.0] vendor c/common@v0.47.5
This commit is contained in:
2
go.mod
2
go.mod
@ -12,7 +12,7 @@ require (
|
||||
github.com/containernetworking/cni v1.0.1
|
||||
github.com/containernetworking/plugins v1.0.1
|
||||
github.com/containers/buildah v1.24.1
|
||||
github.com/containers/common v0.47.4
|
||||
github.com/containers/common v0.47.5
|
||||
github.com/containers/conmon v2.0.20+incompatible
|
||||
github.com/containers/image/v5 v5.19.2
|
||||
github.com/containers/ocicrypt v1.1.2
|
||||
|
4
go.sum
4
go.sum
@ -327,8 +327,8 @@ github.com/containernetworking/plugins v1.0.1/go.mod h1:QHCfGpaTwYTbbH+nZXKVTxNB
|
||||
github.com/containers/buildah v1.24.1 h1:PlvU0hbUsm1x4H9kPcsmqjViqDGnBpSZT3QtZ00RtgI=
|
||||
github.com/containers/buildah v1.24.1/go.mod h1:sE7AaoPQYwAB7dleOOKOpzOO3bA8lRUvZRiZcn/RYi0=
|
||||
github.com/containers/common v0.47.3/go.mod h1:/VAV4ibC27Lfyb9cxXM4uTYrJFa/7s+utNB052MJdzY=
|
||||
github.com/containers/common v0.47.4 h1:kS202Z/bTQIM/pwyuJ+lF8143Uli6AB9Q9OVR0xa9CM=
|
||||
github.com/containers/common v0.47.4/go.mod h1:HgX0mFXyB0Tbe2REEIp9x9CxET6iSzmHfwR6S/t2LZc=
|
||||
github.com/containers/common v0.47.5 h1:Qm9o+wVPO9sbggTKubN3xYMtPRaPv7dmcrJQgongHHw=
|
||||
github.com/containers/common v0.47.5/go.mod h1:HgX0mFXyB0Tbe2REEIp9x9CxET6iSzmHfwR6S/t2LZc=
|
||||
github.com/containers/conmon v2.0.20+incompatible h1:YbCVSFSCqFjjVwHTPINGdMX1F6JXHGTUje2ZYobNrkg=
|
||||
github.com/containers/conmon v2.0.20+incompatible/go.mod h1:hgwZ2mtuDrppv78a/cOBNiCm6O0UMWGx1mu7P00nu5I=
|
||||
github.com/containers/image/v5 v5.19.1/go.mod h1:ewoo3u+TpJvGmsz64XgzbyTHwHtM94q7mgK/pX+v2SE=
|
||||
|
@ -417,12 +417,12 @@ var _ = Describe("Podman login and logout", func() {
|
||||
Expect(authInfo).NotTo(HaveKey(testRepos[1]))
|
||||
})
|
||||
|
||||
It("podman login with repository invalid arguments", func() {
|
||||
It("podman login with http{s} prefix", func() {
|
||||
authFile := filepath.Join(podmanTest.TempDir, "auth.json")
|
||||
|
||||
for _, invalidArg := range []string{
|
||||
"https://" + server + "/podmantest",
|
||||
server + "/podmantest/image:latest",
|
||||
"http://" + server + "/podmantest/image:latest",
|
||||
} {
|
||||
session := podmanTest.Podman([]string{
|
||||
"login",
|
||||
@ -432,7 +432,7 @@ var _ = Describe("Podman login and logout", func() {
|
||||
invalidArg,
|
||||
})
|
||||
session.WaitWithDefaultTimeout()
|
||||
Expect(session).Should(ExitWithError())
|
||||
Expect(session).To(Exit(0))
|
||||
}
|
||||
})
|
||||
|
||||
|
52
vendor/github.com/containers/common/pkg/auth/auth.go
generated
vendored
52
vendor/github.com/containers/common/pkg/auth/auth.go
generated
vendored
@ -4,6 +4,7 @@ import (
|
||||
"bufio"
|
||||
"context"
|
||||
"fmt"
|
||||
"net/url"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"strings"
|
||||
@ -165,20 +166,21 @@ func Login(ctx context.Context, systemContext *types.SystemContext, opts *LoginO
|
||||
// parseCredentialsKey turns the provided argument into a valid credential key
|
||||
// and computes the registry part.
|
||||
func parseCredentialsKey(arg string, acceptRepositories bool) (key, registry string, err error) {
|
||||
// URL arguments are replaced with their host[:port] parts.
|
||||
key, err = replaceURLByHostPort(arg)
|
||||
if err != nil {
|
||||
return "", "", err
|
||||
}
|
||||
|
||||
split := strings.Split(key, "/")
|
||||
registry = split[0]
|
||||
|
||||
if !acceptRepositories {
|
||||
registry = getRegistryName(arg)
|
||||
key = registry
|
||||
return key, registry, nil
|
||||
return registry, registry, nil
|
||||
}
|
||||
|
||||
key = trimScheme(arg)
|
||||
if key != arg {
|
||||
return "", "", errors.New("credentials key has https[s]:// prefix")
|
||||
}
|
||||
|
||||
registry = getRegistryName(key)
|
||||
// Return early if the key isn't namespaced or uses an http{s} prefix.
|
||||
if registry == key {
|
||||
// The key is not namespaced
|
||||
return key, registry, nil
|
||||
}
|
||||
|
||||
@ -202,24 +204,18 @@ func parseCredentialsKey(arg string, acceptRepositories bool) (key, registry str
|
||||
return key, registry, nil
|
||||
}
|
||||
|
||||
// getRegistryName scrubs and parses the input to get the server name
|
||||
func getRegistryName(server string) string {
|
||||
// removes 'http://' or 'https://' from the front of the
|
||||
// server/registry string if either is there. This will be mostly used
|
||||
// for user input from 'Buildah login' and 'Buildah logout'.
|
||||
server = trimScheme(server)
|
||||
// gets the registry from the input. If the input is of the form
|
||||
// quay.io/myuser/myimage, it will parse it and just return quay.io
|
||||
split := strings.Split(server, "/")
|
||||
return split[0]
|
||||
}
|
||||
|
||||
// trimScheme removes the HTTP(s) scheme from the provided repository.
|
||||
func trimScheme(repository string) string {
|
||||
// removes 'http://' or 'https://' from the front of the
|
||||
// server/registry string if either is there. This will be mostly used
|
||||
// for user input from 'Buildah login' and 'Buildah logout'.
|
||||
return strings.TrimPrefix(strings.TrimPrefix(repository, "https://"), "http://")
|
||||
// If the specified string starts with http{s} it is replaced with it's
|
||||
// host[:port] parts; everything else is stripped. Otherwise, the string is
|
||||
// returned as is.
|
||||
func replaceURLByHostPort(repository string) (string, error) {
|
||||
if !strings.HasPrefix(repository, "https://") && !strings.HasPrefix(repository, "http://") {
|
||||
return repository, nil
|
||||
}
|
||||
u, err := url.Parse(repository)
|
||||
if err != nil {
|
||||
return "", fmt.Errorf("trimming http{s} prefix: %v", err)
|
||||
}
|
||||
return u.Host, nil
|
||||
}
|
||||
|
||||
// getUserAndPass gets the username and password from STDIN if not given
|
||||
|
2
vendor/github.com/containers/common/version/version.go
generated
vendored
2
vendor/github.com/containers/common/version/version.go
generated
vendored
@ -1,4 +1,4 @@
|
||||
package version
|
||||
|
||||
// Version is the version of the build.
|
||||
const Version = "0.47.4"
|
||||
const Version = "0.47.5"
|
||||
|
2
vendor/modules.txt
vendored
2
vendor/modules.txt
vendored
@ -109,7 +109,7 @@ github.com/containers/buildah/pkg/rusage
|
||||
github.com/containers/buildah/pkg/sshagent
|
||||
github.com/containers/buildah/pkg/util
|
||||
github.com/containers/buildah/util
|
||||
# github.com/containers/common v0.47.4
|
||||
# github.com/containers/common v0.47.5
|
||||
## explicit
|
||||
github.com/containers/common/libimage
|
||||
github.com/containers/common/libimage/manifests
|
||||
|
Reference in New Issue
Block a user