mirror of
https://github.com/containers/podman
synced 2024-10-21 01:34:37 +00:00
rootless: fill in correct storage conf default
When the configuration file is specified, be sure to fill rootless compatible values in the default configuration. Closes: https://github.com/containers/libpod/issues/2510 Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
This commit is contained in:
parent
4b80517b6a
commit
2ac7991d1b
|
@ -333,7 +333,7 @@ func NewRuntime(options ...RuntimeOption) (runtime *Runtime, err error) {
|
|||
|
||||
storageConf, err := util.GetDefaultStoreOptions()
|
||||
if err != nil {
|
||||
return nil, errors.Wrapf(err, "error retrieving rootless storage config")
|
||||
return nil, errors.Wrapf(err, "error retrieving storage config")
|
||||
}
|
||||
runtime.config.StorageConfig = storageConf
|
||||
runtime.config.StaticDir = filepath.Join(storageConf.GraphRoot, "libpod")
|
||||
|
@ -365,8 +365,7 @@ func NewRuntime(options ...RuntimeOption) (runtime *Runtime, err error) {
|
|||
|
||||
// containers/image uses XDG_RUNTIME_DIR to locate the auth file.
|
||||
// So make sure the env variable is set.
|
||||
err = SetXdgRuntimeDir(runtimeDir)
|
||||
if err != nil {
|
||||
if err := SetXdgRuntimeDir(runtimeDir); err != nil {
|
||||
return nil, errors.Wrapf(err, "cannot set XDG_RUNTIME_DIR")
|
||||
}
|
||||
|
||||
|
@ -475,13 +474,31 @@ func NewRuntimeFromConfig(configPath string, options ...RuntimeOption) (runtime
|
|||
// Set three fields not in the TOML config
|
||||
runtime.config.StateType = defaultRuntimeConfig.StateType
|
||||
runtime.config.OCIRuntime = defaultRuntimeConfig.OCIRuntime
|
||||
runtime.config.StorageConfig = storage.StoreOptions{}
|
||||
|
||||
storageConf, err := util.GetDefaultStoreOptions()
|
||||
if err != nil {
|
||||
return nil, errors.Wrapf(err, "error retrieving storage config")
|
||||
}
|
||||
runtime.config.StorageConfig = storageConf
|
||||
runtime.config.StaticDir = filepath.Join(storageConf.GraphRoot, "libpod")
|
||||
runtime.config.VolumePath = filepath.Join(storageConf.GraphRoot, "volumes")
|
||||
|
||||
tmpDir, err := getDefaultTmpDir()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
runtime.config.TmpDir = tmpDir
|
||||
if rootless.IsRootless() {
|
||||
runtimeDir, err := util.GetRootlessRuntimeDir()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
// containers/image uses XDG_RUNTIME_DIR to locate the auth file.
|
||||
// So make sure the env variable is set.
|
||||
if err := SetXdgRuntimeDir(runtimeDir); err != nil {
|
||||
return nil, errors.Wrapf(err, "cannot set XDG_RUNTIME_DIR")
|
||||
}
|
||||
}
|
||||
|
||||
// Check to see if the given configuration file exists
|
||||
if _, err := os.Stat(configPath); err != nil {
|
||||
|
|
Loading…
Reference in a new issue