mirror of
https://github.com/Control-D-Inc/ctrld.git
synced 2026-02-03 22:18:39 +00:00
cmd/ctrld: add "start --no-cd" flag to disable cd mode
This commit is contained in:
committed by
Cuong Manh Le
parent
c7bad63869
commit
68fe7e8406
@@ -37,7 +37,13 @@ import (
|
||||
"github.com/Control-D-Inc/ctrld/internal/router"
|
||||
)
|
||||
|
||||
const selfCheckFQDN = "verify.controld.com"
|
||||
const (
|
||||
selfCheckFQDN = "verify.controld.com"
|
||||
cdModeConfigHeader = `# AUTO-GENERATED VIA CD FLAG - DO NOT MODIFY
|
||||
# TO DISABLE AUTO-GENERATION RUN: ctrld service start --no-cd
|
||||
|
||||
`
|
||||
)
|
||||
|
||||
var (
|
||||
version = "dev"
|
||||
@@ -240,6 +246,7 @@ func initCLI() {
|
||||
runCmd.Flags().StringVarP(&logPath, "log", "", "", "Path to log file")
|
||||
runCmd.Flags().IntVarP(&cacheSize, "cache_size", "", 0, "Enable cache with size items")
|
||||
runCmd.Flags().StringVarP(&cdUID, "cd", "", "", "Control D resolver uid")
|
||||
runCmd.Flags().BoolVarP(&noCD, "no-cd", "", false, `Disable cd mode, the same effect with --cd=""`)
|
||||
runCmd.Flags().StringVarP(&homedir, "homedir", "", "", "")
|
||||
_ = runCmd.Flags().MarkHidden("homedir")
|
||||
runCmd.Flags().StringVarP(&iface, "iface", "", "", `Update DNS setting for iface, "auto" means the default interface gateway`)
|
||||
@@ -292,6 +299,12 @@ func initCLI() {
|
||||
initLogging()
|
||||
cfg.Service.LogPath = logPath
|
||||
|
||||
if noCD {
|
||||
cdUID = ""
|
||||
if err := writeConfigFile(); err != nil {
|
||||
log.Fatalf("failed to overwrite config file with --no-cd: %v", err)
|
||||
}
|
||||
}
|
||||
processCDFlags()
|
||||
|
||||
// Explicitly passing config, so on system where home directory could not be obtained,
|
||||
@@ -349,6 +362,7 @@ func initCLI() {
|
||||
startCmd.Flags().StringVarP(&logPath, "log", "", "", "Path to log file")
|
||||
startCmd.Flags().IntVarP(&cacheSize, "cache_size", "", 0, "Enable cache with size items")
|
||||
startCmd.Flags().StringVarP(&cdUID, "cd", "", "", "Control D resolver uid")
|
||||
startCmd.Flags().BoolVarP(&noCD, "no-cd", "", false, `Disable cd mode, the same effect with --cd=""`)
|
||||
startCmd.Flags().StringVarP(&iface, "iface", "", "", `Update DNS setting for iface, "auto" means the default interface gateway`)
|
||||
startCmd.Flags().BoolVarP(&setupRouter, "router", "", false, `setup for running on router platforms`)
|
||||
_ = startCmd.Flags().MarkHidden("router")
|
||||
@@ -565,7 +579,7 @@ func writeConfigFile() error {
|
||||
}
|
||||
defer f.Close()
|
||||
if cdUID != "" {
|
||||
if _, err := f.WriteString("# AUTO-GENERATED VIA CD FLAG - DO NOT MODIFY\n\n"); err != nil {
|
||||
if _, err := f.WriteString(cdModeConfigHeader); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
@@ -27,6 +27,7 @@ var (
|
||||
cfg ctrld.Config
|
||||
verbose int
|
||||
cdUID string
|
||||
noCD bool
|
||||
iface string
|
||||
ifaceStartStop string
|
||||
setupRouter bool
|
||||
|
||||
Reference in New Issue
Block a user