From 114eeb79a1b06a4ae5879aea79ae9a45ceb3095a Mon Sep 17 00:00:00 2001 From: Raphael 'kena' Poss Date: Fri, 11 Sep 2020 16:43:19 +0200 Subject: [PATCH] roachprod: make it possible to use `-e` multiple times This way it's possible to pass env vars using `-e` assembled from multiple strings. Also this fixes how `cassandra` was invoked when `-e` was also specified. Release note: None --- pkg/cmd/roachprod/install/cassandra.go | 2 +- pkg/cmd/roachprod/main.go | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkg/cmd/roachprod/install/cassandra.go b/pkg/cmd/roachprod/install/cassandra.go index dc64af7aff2c..136c111ba25b 100644 --- a/pkg/cmd/roachprod/install/cassandra.go +++ b/pkg/cmd/roachprod/install/cassandra.go @@ -49,7 +49,7 @@ func (Cassandra) Start(c *SyncedCluster, extraArgs []string) { _ = session.Close() }() - cmd := c.Env + `env ROACHPROD=true cassandra` + + cmd := `env ` + c.Env + ` ROACHPROD=true cassandra` + ` -Dcassandra.config=file://${PWD}/cassandra.yaml` + ` -Dcassandra.ring_delay_ms=3000` + ` > cassandra.stdout 2> cassandra.stderr` diff --git a/pkg/cmd/roachprod/main.go b/pkg/cmd/roachprod/main.go index e4b73ee178ba..2796ece18bdc 100644 --- a/pkg/cmd/roachprod/main.go +++ b/pkg/cmd/roachprod/main.go @@ -80,7 +80,7 @@ var ( listMine bool clusterType = "cockroach" secure = false - nodeEnv = "COCKROACH_ENABLE_RPC_COMPRESSION=false" + nodeEnv = []string{"COCKROACH_ENABLE_RPC_COMPRESSION=false"} nodeArgs []string tag string external = false @@ -175,7 +175,7 @@ Available clusters: } c.Nodes = nodes c.Secure = secure - c.Env = nodeEnv + c.Env = strings.Join(nodeEnv, " ") c.Args = nodeArgs if tag != "" { c.Tag = "/" + tag @@ -1777,7 +1777,7 @@ func main() { "start nodes sequentially so node IDs match hostnames") cmd.Flags().StringArrayVarP( &nodeArgs, "args", "a", nil, "node arguments") - cmd.Flags().StringVarP( + cmd.Flags().StringArrayVarP( &nodeEnv, "env", "e", nodeEnv, "node environment variables") cmd.Flags().StringVarP( &clusterType, "type", "t", clusterType, `cluster type ("cockroach" or "cassandra")`)