1
0

Revert "GODT-2013: CLI flag for frontend is required."

This reverts commit 4bb29b1b5c.
This commit is contained in:
James Houlahan
2022-11-04 00:53:03 +01:00
parent 7cb9546d21
commit f965d01922
4 changed files with 16 additions and 36 deletions

View File

@ -69,9 +69,8 @@ const (
flagMemProfileShort = "m" flagMemProfileShort = "m"
flagLogLevel = "log-level" flagLogLevel = "log-level"
flagLogLevelShort = "l" flagLogLevelShort = "l"
FlagGRPC = "grpc" // FlagGRPC starts the gRPC frontend // FlagCLI indicate to start with command line interface.
FlagGRPCShort = "g" FlagCLI = "cli"
FlagCLI = "cli" // FlagCLI indicate to start with command line interface.
flagCLIShort = "c" flagCLIShort = "c"
flagRestart = "restart" flagRestart = "restart"
FlagLauncher = "launcher" FlagLauncher = "launcher"
@ -300,11 +299,6 @@ func (b *Base) NewApp(mainLoop func(*Base, *cli.Context) error) *cli.App {
Aliases: []string{flagLogLevelShort}, Aliases: []string{flagLogLevelShort},
Usage: "Set the log level (one of panic, fatal, error, warn, info, debug)", Usage: "Set the log level (one of panic, fatal, error, warn, info, debug)",
}, },
&cli.BoolFlag{
Name: FlagGRPC,
Aliases: []string{FlagGRPCShort},
Usage: "Start the gRPC service",
},
&cli.BoolFlag{ &cli.BoolFlag{
Name: FlagCLI, Name: FlagCLI,
Aliases: []string{flagCLIShort}, Aliases: []string{flagCLIShort},

View File

@ -43,7 +43,7 @@ const (
flagLogIMAP = "log-imap" flagLogIMAP = "log-imap"
flagLogSMTP = "log-smtp" flagLogSMTP = "log-smtp"
flagNonInteractive = "noninteractive" flagNonInteractive = "noninteractive"
flagNonInteractiveShort = "n"
// Memory cache was estimated by empirical usage in the past, and it was set to 100MB. // Memory cache was estimated by empirical usage in the past, and it was set to 100MB.
// NOTE: This value must not be less than maximal size of one email (~30MB). // NOTE: This value must not be less than maximal size of one email (~30MB).
inMemoryCacheLimit = 100 * (1 << 20) inMemoryCacheLimit = 100 * (1 << 20)
@ -63,7 +63,6 @@ func New(base *base.Base) *cli.App {
}, },
&cli.BoolFlag{ &cli.BoolFlag{
Name: flagNonInteractive, Name: flagNonInteractive,
Aliases: []string{flagNonInteractiveShort},
Usage: "Start Bridge entirely non-interactively", Usage: "Start Bridge entirely non-interactively",
}, },
}...) }...)
@ -73,11 +72,6 @@ func New(base *base.Base) *cli.App {
func main(b *base.Base, c *cli.Context) error { //nolint:funlen func main(b *base.Base, c *cli.Context) error { //nolint:funlen
frontendType := getFrontendTypeFromCLIParams(c) frontendType := getFrontendTypeFromCLIParams(c)
if frontendType == frontend.Unknown {
_ = cli.ShowAppHelp(c)
return errors.New("no frontend was specified. Use --grpc, --cli or --noninteractive")
}
f := frontend.New( f := frontend.New(
frontendType, frontendType,
!c.Bool(base.FlagNoWindow), !c.Bool(base.FlagNoWindow),
@ -177,14 +171,12 @@ func main(b *base.Base, c *cli.Context) error { //nolint:funlen
func getFrontendTypeFromCLIParams(c *cli.Context) frontend.Type { func getFrontendTypeFromCLIParams(c *cli.Context) frontend.Type {
switch { switch {
case c.Bool(base.FlagGRPC):
return frontend.GRPC
case c.Bool(base.FlagCLI): case c.Bool(base.FlagCLI):
return frontend.CLI return frontend.CLI
case c.Bool(flagNonInteractive): case c.Bool(flagNonInteractive):
return frontend.NonInteractive return frontend.NonInteractive
default: default:
return frontend.Unknown return frontend.GRPC
} }
} }

View File

@ -257,7 +257,7 @@ void launchBridge(QStringList const &args)
else else
app().log().debug(QString("Bridge executable path: %1").arg(QDir::toNativeSeparators(bridgeExePath))); app().log().debug(QString("Bridge executable path: %1").arg(QDir::toNativeSeparators(bridgeExePath)));
overseer = std::make_unique<Overseer>(new ProcessMonitor(bridgeExePath, QStringList("--grpc") + args, nullptr), nullptr); overseer = std::make_unique<Overseer>(new ProcessMonitor(bridgeExePath, args, nullptr), nullptr);
overseer->startWorker(true); overseer->startWorker(true);
} }

View File

@ -25,7 +25,6 @@ import (
"github.com/ProtonMail/proton-bridge/v2/internal/locations" "github.com/ProtonMail/proton-bridge/v2/internal/locations"
"github.com/ProtonMail/proton-bridge/v2/internal/updater" "github.com/ProtonMail/proton-bridge/v2/internal/updater"
"github.com/ProtonMail/proton-bridge/v2/pkg/listener" "github.com/ProtonMail/proton-bridge/v2/pkg/listener"
"github.com/sirupsen/logrus"
) )
// Type describes the available types of frontend. // Type describes the available types of frontend.
@ -35,7 +34,6 @@ const (
CLI Type = iota CLI Type = iota
GRPC GRPC
NonInteractive NonInteractive
Unknown
) )
type Frontend interface { type Frontend interface {
@ -47,7 +45,7 @@ type Frontend interface {
WaitUntilFrontendIsReady() WaitUntilFrontendIsReady()
} }
// New returns initialized frontend based on `frontendType`, which can be `CLI` or `GRPC`. Non-interactive will return a nil frontend. // New returns initialized frontend based on `frontendType`, which can be `CLI` or `GRPC`.
func New( func New(
frontendType Type, frontendType Type,
showWindowOnStart bool, showWindowOnStart bool,
@ -77,13 +75,9 @@ func New(
) )
case NonInteractive: case NonInteractive:
return nil
case Unknown:
fallthrough fallthrough
default: default:
logrus.Panicf("Unexpected frontend value %v", frontendType) return nil
return nil // return statement is required by compiler, although the above call will panic.
} }
} }