Files
filebrowser/cmd/config_set.go
T

62 lines
1.1 KiB
Go
Raw Normal View History

2019-01-05 22:44:33 +00:00
package cmd
import (
"github.com/spf13/cobra"
)
func init() {
configCmd.AddCommand(configSetCmd)
2019-01-08 10:50:37 +00:00
addConfigFlags(configSetCmd.Flags())
2019-01-05 22:44:33 +00:00
}
var configSetCmd = &cobra.Command{
Use: "set",
Short: "Updates the configuration",
Long: `Updates the configuration. Set the flags for the options
2019-01-08 16:37:02 +00:00
you want to change. Other options will remain unchanged.`,
2019-01-05 22:44:33 +00:00
Args: cobra.NoArgs,
2025-11-18 11:29:28 +01:00
RunE: withStore(func(cmd *cobra.Command, _ []string, st *store) error {
2019-01-08 14:07:55 +00:00
flags := cmd.Flags()
// Read existing config
2025-11-18 11:29:28 +01:00
set, err := st.Settings.Get()
if err != nil {
return err
}
2019-01-08 14:07:55 +00:00
2025-11-18 11:29:28 +01:00
ser, err := st.Settings.GetServer()
if err != nil {
return err
}
2019-01-05 22:44:33 +00:00
2025-11-18 11:29:28 +01:00
auther, err := st.Auth.Get(set.AuthMethod)
if err != nil {
return err
}
2019-05-20 04:55:36 +03:00
// Get updated config
auther, err = getSettings(flags, set, ser, auther, false)
if err != nil {
return err
}
2019-01-05 22:44:33 +00:00
// Save updated config
2025-11-18 11:29:28 +01:00
err = st.Auth.Save(auther)
if err != nil {
return err
}
2025-11-18 11:29:28 +01:00
err = st.Settings.Save(set)
if err != nil {
return err
}
2025-11-18 11:29:28 +01:00
err = st.Settings.SaveServer(ser)
if err != nil {
return err
}
return printSettings(ser, set, auther)
2025-11-18 11:29:28 +01:00
}, storeOptions{}),
2019-01-05 22:44:33 +00:00
}