From 8534d0a048823556b1f1b0df36211c34625768d5 Mon Sep 17 00:00:00 2001 From: gcaracuel <633810+gcaracuel@users.noreply.github.com> Date: Wed, 19 Mar 2025 15:34:07 +0100 Subject: [PATCH] loop: Global flags to accept ENV vars overrides. --- cmd/loop/main.go | 38 +++++++++++++++++++++++++------------- 1 file changed, 25 insertions(+), 13 deletions(-) diff --git a/cmd/loop/main.go b/cmd/loop/main.go index 9d1d4621f..9195c4bb5 100644 --- a/cmd/loop/main.go +++ b/cmd/loop/main.go @@ -51,26 +51,30 @@ var ( defaultInitiator = "loop-cli" loopDirFlag = cli.StringFlag{ - Name: "loopdir", - Value: loopd.LoopDirBase, - Usage: "path to loop's base directory", + Name: "loopdir", + Value: loopd.LoopDirBase, + Usage: "path to loop's base directory", + EnvVar: envVarLoopDir, } networkFlag = cli.StringFlag{ Name: "network, n", Usage: "the network loop is running on e.g. mainnet, " + "testnet, etc.", - Value: loopd.DefaultNetwork, + Value: loopd.DefaultNetwork, + EnvVar: envVarNetwork, } tlsCertFlag = cli.StringFlag{ - Name: "tlscertpath", - Usage: "path to loop's TLS certificate", - Value: loopd.DefaultTLSCertPath, + Name: "tlscertpath", + Usage: "path to loop's TLS certificate", + Value: loopd.DefaultTLSCertPath, + EnvVar: envVarTLSCertPath, } macaroonPathFlag = cli.StringFlag{ - Name: "macaroonpath", - Usage: "path to macaroon file", - Value: loopd.DefaultMacaroonPath, + Name: "macaroonpath", + Usage: "path to macaroon file", + Value: loopd.DefaultMacaroonPath, + EnvVar: envVarMacaroonPath, } verboseFlag = cli.BoolFlag{ Name: "verbose, v", @@ -116,6 +120,13 @@ const ( // prints out as, // Conf target: 9 block blkFmt = "%-36s %12d block\n" + + // Environment variables names that can be used to set the global flags. + envVarRPCServer = "LOOPCLI_RPCSERVER" + envVarNetwork = "LOOPCLI_NETWORK" + envVarLoopDir = "LOOPCLI_LOOPDIR" + envVarTLSCertPath = "LOOPCLI_TLSCERTPATH" + envVarMacaroonPath = "LOOPCLI_MACAROONPATH" ) func printJSON(resp interface{}) { @@ -156,9 +167,10 @@ func main() { app.Usage = "control plane for your loopd" app.Flags = []cli.Flag{ cli.StringFlag{ - Name: "rpcserver", - Value: "localhost:11010", - Usage: "loopd daemon address host:port", + Name: "rpcserver", + Value: "localhost:11010", + Usage: "loopd daemon address host:port", + EnvVar: envVarRPCServer, }, networkFlag, loopDirFlag,