Skip to content

roachprod: ignores --binary argument #72425

@tbg

Description

@tbg

Describe the problem

roachprod start --binary=x will behave like roachprod start, i.e. it ends up starting the wrong binary.

To Reproduce

tobias@td:~/go/src/github.com/cockroachdb/cockroach$ echo '#!/bin/bash
> 
> echo "WRONG!"
> exit 123
> ' > ~/local/1/cockroach
tobias@td:~/go/src/github.com/cockroachdb/cockroach$ chmod +x ~/local/1/cockroach 
tobias@td:~/go/src/github.com/cockroachdb/cockroach$ roachprod put local ./cockroach ./cockroach-foo
tobias@td:~/go/src/github.com/cockroachdb/cockroach$ roachprod start --binary cockroach-foo local
local: starting nodes
0: ~ /home/tobias/local/1/cockroach version: exit status 123
(1) attached stack trace
  -- stack trace:
  | github.com/cockroachdb/cockroach/pkg/roachprod/install.getCockroachVersion
  | 	github.com/cockroachdb/cockroach/pkg/roachprod/install/cockroach.go:115
  | github.com/cockroachdb/cockroach/pkg/roachprod/install.Cockroach.Start.func1
  | 	github.com/cockroachdb/cockroach/pkg/roachprod/install/cockroach.go:163
  | github.com/cockroachdb/cockroach/pkg/roachprod/install.(*SyncedCluster).ParallelE.func1.1
  | 	github.com/cockroachdb/cockroach/pkg/roachprod/install/cluster_synced.go:1710
  | runtime.goexit
  | 	GOROOT/src/runtime/asm_amd64.s:1371
Wraps: (2) ~ /home/tobias/local/1/cockroach version
  | WRONG!
Wraps: (3) exit status 123
Error types: (1) *withstack.withStack (2) *errutil.withPrefix (3) *exec.ExitError: 
I211104 09:31:10.766376 1 1@roachprod/install/cluster_synced.go:1678  [-] 1  the server is terminating due to a fatal error (see the DEV channel for details)
[...]

On top of not supporting the --binary flag, roachprod also appears to be calling log.Fatal which it should not. It should return errors back up so that cobra can render them correctly.

Metadata

Metadata

Assignees

Labels

C-bugCode not up to spec/doc, specs & docs deemed correct. Solution expected to change code/behavior.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions