rootless: cherry-pick runtime from the system configuration

when creating the default libpod.conf file, be sure the default OCI
runtime is cherry picked from the system configuration.

Closes: https://github.com/containers/libpod/issues/3781

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
This commit is contained in:
Giuseppe Scrivano
2019-08-12 12:44:47 +02:00
parent 2348c2873f
commit 79aeed9681

View File

@ -274,6 +274,8 @@ type runtimeConfiguredFrom struct {
runtimePath bool runtimePath bool
cniPluginDir bool cniPluginDir bool
noPivotRoot bool noPivotRoot bool
runtimeSupportsJSON bool
ociRuntime bool
} }
func defaultRuntimeConfig() (RuntimeConfig, error) { func defaultRuntimeConfig() (RuntimeConfig, error) {
@ -593,6 +595,12 @@ func newRuntimeFromConfig(ctx context.Context, userConfigPath string, options ..
if tmpConfig.NoPivotRoot { if tmpConfig.NoPivotRoot {
runtime.configuredFrom.noPivotRoot = true runtime.configuredFrom.noPivotRoot = true
} }
if tmpConfig.RuntimeSupportsJSON != nil {
runtime.configuredFrom.runtimeSupportsJSON = true
}
if tmpConfig.OCIRuntime != "" {
runtime.configuredFrom.ociRuntime = true
}
if _, err := toml.Decode(string(contents), runtime.config); err != nil { if _, err := toml.Decode(string(contents), runtime.config); err != nil {
return nil, errors.Wrapf(err, "error decoding configuration file %s", configPath) return nil, errors.Wrapf(err, "error decoding configuration file %s", configPath)
@ -633,6 +641,13 @@ func newRuntimeFromConfig(ctx context.Context, userConfigPath string, options ..
if !runtime.configuredFrom.noPivotRoot { if !runtime.configuredFrom.noPivotRoot {
runtime.config.NoPivotRoot = tmpConfig.NoPivotRoot runtime.config.NoPivotRoot = tmpConfig.NoPivotRoot
} }
if !runtime.configuredFrom.runtimeSupportsJSON {
runtime.config.RuntimeSupportsJSON = tmpConfig.RuntimeSupportsJSON
}
if !runtime.configuredFrom.ociRuntime {
runtime.config.OCIRuntime = tmpConfig.OCIRuntime
}
break break
} }
} }