84e2806c4b
This adds experimental support for web gui integration so that rclone can fetch and run a web based GUI using the --rc-web-ui and related flags. It downloads and caches a webui zip file which it then unpacks and opens in the browser.
27 lines
1.3 KiB
Go
27 lines
1.3 KiB
Go
// Package rcflags implements command line flags to set up the remote control
|
|
package rcflags
|
|
|
|
import (
|
|
"github.com/rclone/rclone/cmd/serve/httplib/httpflags"
|
|
"github.com/rclone/rclone/fs/config/flags"
|
|
"github.com/rclone/rclone/fs/rc"
|
|
"github.com/spf13/pflag"
|
|
)
|
|
|
|
// Options set by command line flags
|
|
var (
|
|
Opt = rc.DefaultOpt
|
|
)
|
|
|
|
// AddFlags adds the remote control flags to the flagSet
|
|
func AddFlags(flagSet *pflag.FlagSet) {
|
|
rc.AddOption("rc", &Opt)
|
|
flags.BoolVarP(flagSet, &Opt.Enabled, "rc", "", false, "Enable the remote control server.")
|
|
flags.StringVarP(flagSet, &Opt.Files, "rc-files", "", "", "Path to local files to serve on the HTTP server.")
|
|
flags.BoolVarP(flagSet, &Opt.Serve, "rc-serve", "", false, "Enable the serving of remote objects.")
|
|
flags.BoolVarP(flagSet, &Opt.NoAuth, "rc-no-auth", "", false, "Don't require auth for certain methods.")
|
|
flags.BoolVarP(flagSet, &Opt.WebUI, "rc-web-gui", "w", false, "Launch WebGUI on localhost")
|
|
flags.BoolVarP(flagSet, &Opt.WebGUIUpdate, "rc-web-gui-update", "", false, "Update / Force update to latest version of web gui")
|
|
flags.StringVarP(flagSet, &Opt.WebGUIFetchURL, "rc-web-fetch-url", "", "https://api.github.com/repos/negative0/rclone-webui-react/releases/latest", "URL to fetch the releases from")
|
|
httpflags.AddFlagsPrefix(flagSet, "rc-", &Opt.HTTPOptions)
|
|
}
|