mirror of https://github.com/containers/podman.git
Merge pull request #6137 from rhatdan/VENDOR
Fix handling of overridden paths from database
This commit is contained in:
commit
2547fe5312
|
@ -46,7 +46,6 @@ func init() {
|
|||
|
||||
// Podman flags.
|
||||
flags.BoolVarP(&loginOptions.tlsVerify, "tls-verify", "", false, "Require HTTPS and verify certificates when contacting registries")
|
||||
flags.BoolVarP(&loginOptions.GetLoginSet, "get-login", "", false, "Return the current login user for the registry")
|
||||
loginOptions.Stdin = os.Stdin
|
||||
loginOptions.Stdout = os.Stdout
|
||||
loginOptions.AcceptUnspecifiedRegistry = true
|
||||
|
|
|
@ -37,7 +37,6 @@ func init() {
|
|||
|
||||
// Flags from the auth package.
|
||||
flags.AddFlagSet(auth.GetLogoutFlags(&logoutOptions))
|
||||
logoutOptions.Stdin = os.Stdin
|
||||
logoutOptions.Stdout = os.Stdout
|
||||
logoutOptions.AcceptUnspecifiedRegistry = true
|
||||
}
|
||||
|
|
2
go.mod
2
go.mod
|
@ -10,7 +10,7 @@ require (
|
|||
github.com/containernetworking/cni v0.7.2-0.20200304161608-4fae32b84921
|
||||
github.com/containernetworking/plugins v0.8.5
|
||||
github.com/containers/buildah v1.14.9-0.20200501175434-42a48f9373d9
|
||||
github.com/containers/common v0.11.0
|
||||
github.com/containers/common v0.11.1
|
||||
github.com/containers/conmon v2.0.14+incompatible
|
||||
github.com/containers/image/v5 v5.4.3
|
||||
github.com/containers/psgo v1.5.0
|
||||
|
|
4
go.sum
4
go.sum
|
@ -72,8 +72,8 @@ github.com/containers/buildah v1.14.9-0.20200501175434-42a48f9373d9 h1:EGegltin1
|
|||
github.com/containers/buildah v1.14.9-0.20200501175434-42a48f9373d9/go.mod h1:+2aNsVcd4pVzmVAbOfWN5X+0Lpz2rtICSGXbTSCzdBU=
|
||||
github.com/containers/common v0.10.0 h1:Km1foMJJBIxceA1/UCZcIuwf8sCF71sP5DwE6Oh1BEA=
|
||||
github.com/containers/common v0.10.0/go.mod h1:6A/moCuQITXLqBe5A0WKKTcCfCmEQRbknI05HcPzOL0=
|
||||
github.com/containers/common v0.11.0 h1:uFSBIl9iqoTIv8icBe9lPrYKkmSiGrAWr0a2PyJLrO4=
|
||||
github.com/containers/common v0.11.0/go.mod h1:ag8p8Xp2o1wPAPz/+bA7LVQlDavtg3M15RZLBWt/2KE=
|
||||
github.com/containers/common v0.11.1 h1:i++kltFD92bKfDeE3B+Bpe5jYVTnAibmIUUUnXYKoPo=
|
||||
github.com/containers/common v0.11.1/go.mod h1:2w3QE6VUmhltGYW4wV00h4okq1Crs7hNI1ZD2I0QRUY=
|
||||
github.com/containers/conmon v2.0.14+incompatible h1:knU1O1QxXy5YxtjMQVKEyCajROaehizK9FHaICl+P5Y=
|
||||
github.com/containers/conmon v2.0.14+incompatible/go.mod h1:hgwZ2mtuDrppv78a/cOBNiCm6O0UMWGx1mu7P00nu5I=
|
||||
github.com/containers/image/v5 v5.4.3 h1:zn2HR7uu4hpvT5QQHgjqonOzKDuM1I1UHUEmzZT5sbs=
|
||||
|
|
|
@ -752,7 +752,7 @@ type DBConfig struct {
|
|||
// mergeDBConfig merges the configuration from the database.
|
||||
func (r *Runtime) mergeDBConfig(dbConfig *DBConfig) error {
|
||||
|
||||
c := r.config.Engine
|
||||
c := &r.config.Engine
|
||||
if !r.storageSet.RunRootSet && dbConfig.StorageTmp != "" {
|
||||
if r.storageConfig.RunRoot != dbConfig.StorageTmp &&
|
||||
r.storageConfig.RunRoot != "" {
|
||||
|
|
|
@ -34,9 +34,32 @@ func CheckAuthFile(authfile string) error {
|
|||
return nil
|
||||
}
|
||||
|
||||
// systemContextWithOptions returns a version of sys
|
||||
// updated with authFile and certDir values (if they are not "").
|
||||
// NOTE: this is a shallow copy that can be used and updated, but may share
|
||||
// data with the original parameter.
|
||||
func systemContextWithOptions(sys *types.SystemContext, authFile, certDir string) *types.SystemContext {
|
||||
if sys != nil {
|
||||
copy := *sys
|
||||
sys = ©
|
||||
} else {
|
||||
sys = &types.SystemContext{}
|
||||
}
|
||||
|
||||
if authFile != "" {
|
||||
sys.AuthFilePath = authFile
|
||||
}
|
||||
if certDir != "" {
|
||||
sys.DockerCertPath = certDir
|
||||
}
|
||||
return sys
|
||||
}
|
||||
|
||||
// Login implements a “log in” command with the provided opts and args
|
||||
// reading the password from opts.Stdin or the options in opts.
|
||||
func Login(ctx context.Context, systemContext *types.SystemContext, opts *LoginOptions, args []string) error {
|
||||
systemContext = systemContextWithOptions(systemContext, opts.AuthFile, opts.CertDir)
|
||||
|
||||
var (
|
||||
server string
|
||||
err error
|
||||
|
@ -172,6 +195,11 @@ func getUserAndPass(opts *LoginOptions, password, userFromAuthFile string) (stri
|
|||
|
||||
// Logout implements a “log out” command with the provided opts and args
|
||||
func Logout(systemContext *types.SystemContext, opts *LogoutOptions, args []string) error {
|
||||
if err := CheckAuthFile(opts.AuthFile); err != nil {
|
||||
return err
|
||||
}
|
||||
systemContext = systemContextWithOptions(systemContext, opts.AuthFile, "")
|
||||
|
||||
var (
|
||||
server string
|
||||
err error
|
||||
|
@ -194,9 +222,6 @@ func Logout(systemContext *types.SystemContext, opts *LogoutOptions, args []stri
|
|||
}
|
||||
server = getRegistryName(args[0])
|
||||
}
|
||||
if err := CheckAuthFile(opts.AuthFile); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if opts.All {
|
||||
if err := config.RemoveAllAuthentication(systemContext); err != nil {
|
||||
|
|
|
@ -7,16 +7,19 @@ import (
|
|||
)
|
||||
|
||||
// LoginOptions represents common flags in login
|
||||
// caller should define bool or optionalBool fields for flags --get-login and --tls-verify
|
||||
// In addition, the caller should probably provide a --tls-verify flag (that affects the provided
|
||||
// *types.SystemContest)
|
||||
type LoginOptions struct {
|
||||
// CLI flags managed by the FlagSet returned by GetLoginFlags
|
||||
// Callers that use GetLoginFlags should not need to touch these values at all; callers that use
|
||||
// other CLI frameworks should set them based on user input.
|
||||
AuthFile string
|
||||
CertDir string
|
||||
Password string
|
||||
Username string
|
||||
StdinPassword bool
|
||||
GetLoginSet bool
|
||||
// Options caller can set
|
||||
GetLoginSet bool // set to true if --get-login is explicitly set
|
||||
Stdin io.Reader // set to os.Stdin
|
||||
Stdout io.Writer // set to os.Stdout
|
||||
AcceptUnspecifiedRegistry bool // set to true if allows login with unspecified registry
|
||||
|
@ -25,10 +28,11 @@ type LoginOptions struct {
|
|||
// LogoutOptions represents the results for flags in logout
|
||||
type LogoutOptions struct {
|
||||
// CLI flags managed by the FlagSet returned by GetLogoutFlags
|
||||
// Callers that use GetLogoutFlags should not need to touch these values at all; callers that use
|
||||
// other CLI frameworks should set them based on user input.
|
||||
AuthFile string
|
||||
All bool
|
||||
// Options caller can set
|
||||
Stdin io.Reader // set to os.Stdin
|
||||
Stdout io.Writer // set to os.Stdout
|
||||
AcceptUnspecifiedRegistry bool // set to true if allows logout with unspecified registry
|
||||
}
|
||||
|
@ -41,6 +45,7 @@ func GetLoginFlags(flags *LoginOptions) *pflag.FlagSet {
|
|||
fs.StringVarP(&flags.Password, "password", "p", "", "Password for registry")
|
||||
fs.StringVarP(&flags.Username, "username", "u", "", "Username for registry")
|
||||
fs.BoolVar(&flags.StdinPassword, "password-stdin", false, "Take the password from stdin")
|
||||
fs.BoolVar(&flags.GetLoginSet, "get-login", false, "Return the current login user for the registry")
|
||||
return &fs
|
||||
}
|
||||
|
||||
|
|
|
@ -442,16 +442,6 @@ func readConfigFromFile(path string, config *Config) (*Config, error) {
|
|||
if err != nil {
|
||||
return nil, fmt.Errorf("unable to decode configuration %v: %v", path, err)
|
||||
}
|
||||
if config.Engine.VolumePath != "" {
|
||||
config.Engine.VolumePathSet = true
|
||||
}
|
||||
if config.Engine.StaticDir != "" {
|
||||
config.Engine.StaticDirSet = true
|
||||
}
|
||||
if config.Engine.TmpDir != "" {
|
||||
config.Engine.TmpDirSet = true
|
||||
}
|
||||
|
||||
return config, err
|
||||
}
|
||||
|
||||
|
|
|
@ -479,6 +479,8 @@ func (c *Config) PidsLimit() int64 {
|
|||
cgroup2, _ := cgroupv2.Enabled()
|
||||
if cgroup2 {
|
||||
return c.Containers.PidsLimit
|
||||
} else {
|
||||
return 0
|
||||
}
|
||||
}
|
||||
return sysinfo.GetDefaultPidsLimit()
|
||||
|
|
|
@ -82,7 +82,7 @@ github.com/containers/buildah/pkg/secrets
|
|||
github.com/containers/buildah/pkg/supplemented
|
||||
github.com/containers/buildah/pkg/umask
|
||||
github.com/containers/buildah/util
|
||||
# github.com/containers/common v0.11.0
|
||||
# github.com/containers/common v0.11.1
|
||||
github.com/containers/common/pkg/apparmor
|
||||
github.com/containers/common/pkg/auth
|
||||
github.com/containers/common/pkg/capabilities
|
||||
|
|
Loading…
Reference in New Issue