Fix containerd config dump.

Signed-off-by: Lantao Liu <lantaol@google.com>
This commit is contained in:
Lantao Liu 2019-10-23 22:36:06 -07:00
parent 966b1b8e30
commit aaccfcbe2b
3 changed files with 14 additions and 2 deletions

View File

@ -65,10 +65,14 @@ func outputConfig(cfg *srvconfig.Config) error {
}
}
if config.Timeouts == nil {
config.Timeouts = make(map[string]string)
}
timeouts := timeout.All()
config.Timeouts = make(map[string]string)
for k, v := range timeouts {
config.Timeouts[k] = v.String()
if config.Timeouts[k] == "" {
config.Timeouts[k] = v.String()
}
}
// for the time being, keep the defaultConfig's version set at 1 so that

View File

@ -39,6 +39,8 @@ separately (for example vendors may keep a custom runtime configuration in a
separate file without modifying the main `config.toml`).
Imported files will overwrite simple fields like `int` or
`string` (if not empty) and will append `array` and `map` fields.
Imported files are also versioned, and the version can't be higher than
the main config.
**[grpc]**
: Section for gRPC socket listener settings. Contains three properties:

View File

@ -28,6 +28,8 @@ import (
"github.com/containerd/containerd/plugin"
)
// NOTE: Any new map fields added also need to be handled in mergeConfig.
// Config provides containerd configuration data for the server
type Config struct {
// Version of the config file
@ -321,6 +323,10 @@ func mergeConfig(to, from *Config) error {
to.ProxyPlugins[k] = v
}
for k, v := range from.Timeouts {
to.Timeouts[k] = v
}
return nil
}