464d6852de
Also set default level of logging to errors, we should not see info messages in the kpod command line. While adding this patch, I found missing options in kpod command line and bash completions, so I added them in. Also fixed some sorting issues in the way commands are displayer in help or in bash completions. Finally fixed the error message to be output on failure using logrus.Errorf, so we don't get the stack any longer. Also updated README.md with missing kpod commands. Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
55 lines
1.2 KiB
Go
55 lines
1.2 KiB
Go
package main
|
|
|
|
import (
|
|
is "github.com/containers/image/storage"
|
|
"github.com/containers/storage"
|
|
"github.com/kubernetes-incubator/cri-o/libkpod"
|
|
"github.com/sirupsen/logrus"
|
|
"github.com/urfave/cli"
|
|
)
|
|
|
|
func getStore(c *libkpod.Config) (storage.Store, error) {
|
|
options := storage.DefaultStoreOptions
|
|
options.GraphRoot = c.Root
|
|
options.RunRoot = c.RunRoot
|
|
options.GraphDriverName = c.Storage
|
|
options.GraphDriverOptions = c.StorageOptions
|
|
|
|
store, err := storage.GetStore(options)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
is.Transport.SetStore(store)
|
|
return store, nil
|
|
}
|
|
|
|
func getConfig(c *cli.Context) (*libkpod.Config, error) {
|
|
config := libkpod.DefaultConfig()
|
|
if c.GlobalIsSet("config") {
|
|
err := config.UpdateFromFile(c.String("config"))
|
|
if err != nil {
|
|
return config, err
|
|
}
|
|
}
|
|
if c.GlobalIsSet("root") {
|
|
config.Root = c.GlobalString("root")
|
|
}
|
|
if c.GlobalIsSet("runroot") {
|
|
config.RunRoot = c.GlobalString("runroot")
|
|
}
|
|
|
|
if c.GlobalIsSet("storage-driver") {
|
|
config.Storage = c.GlobalString("storage-driver")
|
|
}
|
|
if c.GlobalIsSet("storage-opt") {
|
|
opts := c.GlobalStringSlice("storage-opt")
|
|
if len(opts) > 0 {
|
|
config.StorageOptions = opts
|
|
}
|
|
}
|
|
if c.Bool("debug") {
|
|
logrus.SetLevel(logrus.DebugLevel)
|
|
}
|
|
|
|
return config, nil
|
|
}
|