mirror of
https://github.com/containers/podman.git
synced 2025-06-24 11:28:24 +08:00
vendor c/common@main
Finalizes the linked BZ to fix passing down custom authfiles during auto updates. Also fixes the if-newer pull policy. [NO TESTS NEEDED] for now validated manually. There's a TODO to add a new system test that I did not find time for before PTO. BZ: bugzilla.redhat.com/show_bug.cgi?id=2000943 Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
This commit is contained in:
2
go.mod
2
go.mod
@ -12,7 +12,7 @@ require (
|
||||
github.com/containernetworking/cni v0.8.1
|
||||
github.com/containernetworking/plugins v0.9.1
|
||||
github.com/containers/buildah v1.23.0
|
||||
github.com/containers/common v0.44.1-0.20210914173811-fcaa2e0de285
|
||||
github.com/containers/common v0.44.1-0.20210920093543-bf187ada7d0e
|
||||
github.com/containers/conmon v2.0.20+incompatible
|
||||
github.com/containers/image/v5 v5.16.0
|
||||
github.com/containers/ocicrypt v1.1.2
|
||||
|
7
go.sum
7
go.sum
@ -246,8 +246,8 @@ github.com/containernetworking/plugins v0.9.1/go.mod h1:xP/idU2ldlzN6m4p5LmGiwRD
|
||||
github.com/containers/buildah v1.23.0 h1:qGIeSNOczUHzvnaaOS29HSMiYAjw6JgIXYksAyvqnLs=
|
||||
github.com/containers/buildah v1.23.0/go.mod h1:K0iMKgy/MffkkgELBXhSXwTy2HTT6hM0X8qruDR1FwU=
|
||||
github.com/containers/common v0.44.0/go.mod h1:7sdP4vmI5Bm6FPFxb3lvAh1Iktb6tiO1MzjUzhxdoGo=
|
||||
github.com/containers/common v0.44.1-0.20210914173811-fcaa2e0de285 h1:sXBzh8CcqR5cGGY9cM/AUIk58CJKHbyljVtFh8HYyLY=
|
||||
github.com/containers/common v0.44.1-0.20210914173811-fcaa2e0de285/go.mod h1:7sdP4vmI5Bm6FPFxb3lvAh1Iktb6tiO1MzjUzhxdoGo=
|
||||
github.com/containers/common v0.44.1-0.20210920093543-bf187ada7d0e h1:p21+CJSeryr0Vb3dottjXRNYTaRND1QSPm36NogQ7cQ=
|
||||
github.com/containers/common v0.44.1-0.20210920093543-bf187ada7d0e/go.mod h1:zxv7KjdYddSGoWuLUVp6eSb++Ow1zmSMB2jwxuNB4cU=
|
||||
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.16.0 h1:WQcNSzb7+ngS2cfynx0vUwhk+scpgiKlldVcsF8GPbI=
|
||||
@ -652,8 +652,9 @@ github.com/mitchellh/gox v0.4.0/go.mod h1:Sd9lOJ0+aimLBi73mGofS1ycjY8lL3uZM3JPS4
|
||||
github.com/mitchellh/iochan v1.0.0/go.mod h1:JwYml1nuB7xOzsp52dPpHFffvOCDupsG0QubkSMEySY=
|
||||
github.com/mitchellh/mapstructure v0.0.0-20160808181253-ca63d7c062ee/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y=
|
||||
github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y=
|
||||
github.com/mitchellh/mapstructure v1.4.1 h1:CpVNEelQCZBooIPDn+AR3NpivK/TIKU8bDxdASFVQag=
|
||||
github.com/mitchellh/mapstructure v1.4.1/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=
|
||||
github.com/mitchellh/mapstructure v1.4.2 h1:6h7AQ0yhTcIsmFmnAwQls75jp2Gzs4iB8W7pjMO+rqo=
|
||||
github.com/mitchellh/mapstructure v1.4.2/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=
|
||||
github.com/mitchellh/osext v0.0.0-20151018003038-5e2d6d41470f/go.mod h1:OkQIRizQZAeMln+1tSwduZz7+Af5oFlKirV/MSYes2A=
|
||||
github.com/moby/locker v1.0.1/go.mod h1:S7SDdo5zpBK84bzzVlKr2V0hz+7x9hWbYC/kq7oQppc=
|
||||
github.com/moby/spdystream v0.2.0/go.mod h1:f7i0iNDQJ059oMTcWxx8MA/zKFIuD/lY+0GqbN2Wy8c=
|
||||
|
@ -404,7 +404,8 @@ func newerRemoteImageAvailable(ctx context.Context, runtime *libpod.Runtime, img
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
return img.HasDifferentDigest(ctx, remoteRef)
|
||||
options := &libimage.HasDifferentDigestOptions{AuthFilePath: authfile}
|
||||
return img.HasDifferentDigest(ctx, remoteRef, options)
|
||||
}
|
||||
|
||||
// newerLocalImageAvailable returns true if the container and local image have different digests
|
||||
|
18
vendor/github.com/containers/common/libimage/image.go
generated
vendored
18
vendor/github.com/containers/common/libimage/image.go
generated
vendored
@ -715,10 +715,18 @@ func (i *Image) Size() (int64, error) {
|
||||
return i.runtime.store.ImageSize(i.ID())
|
||||
}
|
||||
|
||||
// HasDifferentDigestOptions allows for customizing the check if another
|
||||
// (remote) image has a different digest.
|
||||
type HasDifferentDigestOptions struct {
|
||||
// containers-auth.json(5) file to use when authenticating against
|
||||
// container registries.
|
||||
AuthFilePath string
|
||||
}
|
||||
|
||||
// HasDifferentDigest returns true if the image specified by `remoteRef` has a
|
||||
// different digest than the local one. This check can be useful to check for
|
||||
// updates on remote registries.
|
||||
func (i *Image) HasDifferentDigest(ctx context.Context, remoteRef types.ImageReference) (bool, error) {
|
||||
func (i *Image) HasDifferentDigest(ctx context.Context, remoteRef types.ImageReference, options *HasDifferentDigestOptions) (bool, error) {
|
||||
// We need to account for the arch that the image uses. It seems
|
||||
// common on ARM to tweak this option to pull the correct image. See
|
||||
// github.com/containers/podman/issues/6613.
|
||||
@ -738,6 +746,14 @@ func (i *Image) HasDifferentDigest(ctx context.Context, remoteRef types.ImageRef
|
||||
sys.VariantChoice = inspectInfo.Variant
|
||||
}
|
||||
|
||||
if options != nil && options.AuthFilePath != "" {
|
||||
sys.AuthFilePath = options.AuthFilePath
|
||||
}
|
||||
|
||||
return i.hasDifferentDigestWithSystemContext(ctx, remoteRef, sys)
|
||||
}
|
||||
|
||||
func (i *Image) hasDifferentDigestWithSystemContext(ctx context.Context, remoteRef types.ImageReference, sys *types.SystemContext) (bool, error) {
|
||||
remoteImg, err := remoteRef.NewImage(ctx, sys)
|
||||
if err != nil {
|
||||
return false, err
|
||||
|
2
vendor/github.com/containers/common/libimage/pull.go
generated
vendored
2
vendor/github.com/containers/common/libimage/pull.go
generated
vendored
@ -561,7 +561,7 @@ func (r *Runtime) copySingleImageFromRegistry(ctx context.Context, imageName str
|
||||
}
|
||||
|
||||
if pullPolicy == config.PullPolicyNewer && localImage != nil {
|
||||
isNewer, err := localImage.HasDifferentDigest(ctx, srcRef)
|
||||
isNewer, err := localImage.hasDifferentDigestWithSystemContext(ctx, srcRef, c.systemContext)
|
||||
if err != nil {
|
||||
pullErrors = append(pullErrors, err)
|
||||
continue
|
||||
|
6
vendor/github.com/containers/common/pkg/config/config.go
generated
vendored
6
vendor/github.com/containers/common/pkg/config/config.go
generated
vendored
@ -335,7 +335,7 @@ type EngineConfig struct {
|
||||
// ActiveService index to Destinations added v2.0.3
|
||||
ActiveService string `toml:"active_service,omitempty"`
|
||||
|
||||
// Destinations mapped by service Names
|
||||
// ServiceDestinations mapped by service Names
|
||||
ServiceDestinations map[string]Destination `toml:"service_destinations,omitempty"`
|
||||
|
||||
// RuntimePath is the path to OCI runtime binary for launching containers.
|
||||
@ -379,6 +379,10 @@ type EngineConfig struct {
|
||||
// containers/storage. As such this is not exposed via the config file.
|
||||
StateType RuntimeStateStore `toml:"-"`
|
||||
|
||||
// ServiceTimeout is the number of seconds to wait without a connection
|
||||
// before the `podman system service` times out and exits
|
||||
ServiceTimeout uint `toml:"service_timeout,omitempty"`
|
||||
|
||||
// StaticDir is the path to a persistent directory to store container
|
||||
// files.
|
||||
StaticDir string `toml:"static_dir,omitempty"`
|
||||
|
7
vendor/github.com/containers/common/pkg/config/containers.conf
generated
vendored
7
vendor/github.com/containers/common/pkg/config/containers.conf
generated
vendored
@ -422,7 +422,7 @@ default_sysctls = [
|
||||
# Default options to pass to the slirp4netns binary.
|
||||
# For example "allow_host_loopback=true"
|
||||
#
|
||||
#network_cmd_options = []
|
||||
#network_cmd_options = ["enable_ipv6=true",]
|
||||
|
||||
# Whether to use chroot instead of pivot_root in the runtime
|
||||
#
|
||||
@ -466,6 +466,11 @@ default_sysctls = [
|
||||
# container/storage tmp directory will be used.
|
||||
# image_copy_tmp_dir="/var/tmp"
|
||||
|
||||
# Number of seconds to wait without a connection
|
||||
# before the `podman system service` times out and exits
|
||||
#
|
||||
#service_timeout = 5
|
||||
|
||||
# Directory for persistent engine files (database, etc)
|
||||
# By default, this will be configured relative to where the containers/storage
|
||||
# stores containers
|
||||
|
5
vendor/github.com/containers/common/pkg/config/default.go
generated
vendored
5
vendor/github.com/containers/common/pkg/config/default.go
generated
vendored
@ -257,8 +257,11 @@ func defaultConfigFromMemory() (*EngineConfig, error) {
|
||||
c.ImageBuildFormat = "oci"
|
||||
|
||||
c.CgroupManager = defaultCgroupManager()
|
||||
c.ServiceTimeout = uint(5)
|
||||
c.StopTimeout = uint(10)
|
||||
|
||||
c.NetworkCmdOptions = []string{
|
||||
"enable_ipv6=true",
|
||||
}
|
||||
c.Remote = isRemote()
|
||||
c.OCIRuntimes = map[string][]string{
|
||||
"crun": {
|
||||
|
10
vendor/github.com/mitchellh/mapstructure/CHANGELOG.md
generated
vendored
10
vendor/github.com/mitchellh/mapstructure/CHANGELOG.md
generated
vendored
@ -1,6 +1,12 @@
|
||||
## unreleased
|
||||
## 1.4.2
|
||||
|
||||
* Fix regression where `*time.Time` value would be set to empty and not be sent
|
||||
* Custom name matchers to support any sort of casing, formatting, etc. for
|
||||
field names. [GH-250]
|
||||
* Fix possible panic in ComposeDecodeHookFunc [GH-251]
|
||||
|
||||
## 1.4.1
|
||||
|
||||
* Fix regression where `*time.Time` value would be set to empty and not be sent
|
||||
to decode hooks properly [GH-232]
|
||||
|
||||
## 1.4.0
|
||||
|
3
vendor/github.com/mitchellh/mapstructure/decode_hooks.go
generated
vendored
3
vendor/github.com/mitchellh/mapstructure/decode_hooks.go
generated
vendored
@ -62,7 +62,8 @@ func DecodeHookExec(
|
||||
func ComposeDecodeHookFunc(fs ...DecodeHookFunc) DecodeHookFunc {
|
||||
return func(f reflect.Value, t reflect.Value) (interface{}, error) {
|
||||
var err error
|
||||
var data interface{}
|
||||
data := f.Interface()
|
||||
|
||||
newFrom := f
|
||||
for _, f1 := range fs {
|
||||
data, err = DecodeHookExec(f1, newFrom, t)
|
||||
|
13
vendor/github.com/mitchellh/mapstructure/mapstructure.go
generated
vendored
13
vendor/github.com/mitchellh/mapstructure/mapstructure.go
generated
vendored
@ -192,7 +192,7 @@ type DecodeHookFuncType func(reflect.Type, reflect.Type, interface{}) (interface
|
||||
// source and target types.
|
||||
type DecodeHookFuncKind func(reflect.Kind, reflect.Kind, interface{}) (interface{}, error)
|
||||
|
||||
// DecodeHookFuncRaw is a DecodeHookFunc which has complete access to both the source and target
|
||||
// DecodeHookFuncValue is a DecodeHookFunc which has complete access to both the source and target
|
||||
// values.
|
||||
type DecodeHookFuncValue func(from reflect.Value, to reflect.Value) (interface{}, error)
|
||||
|
||||
@ -258,6 +258,11 @@ type DecoderConfig struct {
|
||||
// The tag name that mapstructure reads for field names. This
|
||||
// defaults to "mapstructure"
|
||||
TagName string
|
||||
|
||||
// MatchName is the function used to match the map key to the struct
|
||||
// field name or tag. Defaults to `strings.EqualFold`. This can be used
|
||||
// to implement case-sensitive tag values, support snake casing, etc.
|
||||
MatchName func(mapKey, fieldName string) bool
|
||||
}
|
||||
|
||||
// A Decoder takes a raw interface value and turns it into structured
|
||||
@ -376,6 +381,10 @@ func NewDecoder(config *DecoderConfig) (*Decoder, error) {
|
||||
config.TagName = "mapstructure"
|
||||
}
|
||||
|
||||
if config.MatchName == nil {
|
||||
config.MatchName = strings.EqualFold
|
||||
}
|
||||
|
||||
result := &Decoder{
|
||||
config: config,
|
||||
}
|
||||
@ -1340,7 +1349,7 @@ func (d *Decoder) decodeStructFromMap(name string, dataVal, val reflect.Value) e
|
||||
continue
|
||||
}
|
||||
|
||||
if strings.EqualFold(mK, fieldName) {
|
||||
if d.config.MatchName(mK, fieldName) {
|
||||
rawMapKey = dataValKey
|
||||
rawMapVal = dataVal.MapIndex(dataValKey)
|
||||
break
|
||||
|
4
vendor/modules.txt
vendored
4
vendor/modules.txt
vendored
@ -94,7 +94,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.44.1-0.20210914173811-fcaa2e0de285
|
||||
# github.com/containers/common v0.44.1-0.20210920093543-bf187ada7d0e
|
||||
github.com/containers/common/libimage
|
||||
github.com/containers/common/libimage/manifests
|
||||
github.com/containers/common/pkg/apparmor
|
||||
@ -432,7 +432,7 @@ github.com/matttproud/golang_protobuf_extensions/pbutil
|
||||
github.com/miekg/pkcs11
|
||||
# github.com/mistifyio/go-zfs v2.1.2-0.20190413222219-f784269be439+incompatible
|
||||
github.com/mistifyio/go-zfs
|
||||
# github.com/mitchellh/mapstructure v1.4.1
|
||||
# github.com/mitchellh/mapstructure v1.4.2
|
||||
github.com/mitchellh/mapstructure
|
||||
# github.com/moby/sys/mount v0.2.0
|
||||
github.com/moby/sys/mount
|
||||
|
Reference in New Issue
Block a user