38 lines
845 B
Go
38 lines
845 B
Go
package cmd
|
|
|
|
import (
|
|
"github.com/spf13/cobra"
|
|
)
|
|
|
|
func init() {
|
|
configCmd.AddCommand(configExportCmd)
|
|
}
|
|
|
|
var configExportCmd = &cobra.Command{
|
|
Use: "export <path>",
|
|
Short: "Export the configuration to a file",
|
|
Long: `Export the configuration to a file. The path must be for a
|
|
json or yaml file. This exported configuration can be changed,
|
|
and imported again with 'config import' command.`,
|
|
Args: jsonYamlArg,
|
|
Run: python(func(cmd *cobra.Command, args []string, d pythonData) {
|
|
settings, err := d.store.Settings.Get()
|
|
checkErr(err)
|
|
|
|
server, err := d.store.Settings.GetServer()
|
|
checkErr(err)
|
|
|
|
auther, err := d.store.Auth.Get(settings.AuthMethod)
|
|
checkErr(err)
|
|
|
|
data := &settingsFile{
|
|
Settings: settings,
|
|
Auther: auther,
|
|
Server: server,
|
|
}
|
|
|
|
err = marshal(args[0], data)
|
|
checkErr(err)
|
|
}, pythonConfig{}),
|
|
}
|