Add 'containerd config dump' subcommand

Signed-off-by: Maksym Pavlenko <makpav@amazon.com>
This commit is contained in:
Maksym Pavlenko 2019-08-30 10:55:32 -07:00
parent 24b9e2c1a0
commit db3a711738

View File

@ -40,17 +40,11 @@ func (c *Config) WriteTo(w io.Writer) (int64, error) {
return 0, toml.NewEncoder(w).Encode(c) return 0, toml.NewEncoder(w).Encode(c)
} }
var configCommand = cli.Command{ func outputConfig(cfg *srvconfig.Config) error {
Name: "config",
Usage: "information on the containerd config",
Subcommands: []cli.Command{
{
Name: "default",
Usage: "see the output of the default config",
Action: func(context *cli.Context) error {
config := &Config{ config := &Config{
Config: defaultConfig(), Config: cfg,
} }
// for the time being, keep the defaultConfig's version set at 1 so that // for the time being, keep the defaultConfig's version set at 1 so that
// when a config without a version is loaded from disk and has no version // when a config without a version is loaded from disk and has no version
// set, we assume it's a v1 config. But when generating new configs via // set, we assume it's a v1 config. But when generating new configs via
@ -77,6 +71,29 @@ var configCommand = cli.Command{
_, err = config.WriteTo(os.Stdout) _, err = config.WriteTo(os.Stdout)
return err return err
}
var configCommand = cli.Command{
Name: "config",
Usage: "information on the containerd config",
Subcommands: []cli.Command{
{
Name: "default",
Usage: "see the output of the default config",
Action: func(context *cli.Context) error {
return outputConfig(defaultConfig())
},
},
{
Name: "dump",
Usage: "see the output of the final main config with imported in subconfig files",
Action: func(context *cli.Context) error {
config := defaultConfig()
if err := srvconfig.LoadConfig(context.GlobalString("config"), config); err != nil && !os.IsNotExist(err) {
return err
}
return outputConfig(config)
}, },
}, },
}, },