debug: ignore invalid target flags (#7860)

This commit is contained in:
Calvin Leung Huang 2019-11-11 15:32:11 -08:00 committed by Brian Kassouf
parent d0aa3ba053
commit 609a854b74
2 changed files with 17 additions and 0 deletions

View File

@ -389,6 +389,13 @@ func (c *DebugCommand) preflight(rawArgs []string) (string, error) {
if len(c.flagTargets) == 0 {
c.flagTargets = c.defaultTargets()
} else {
// Check for any invalid targets and ignore them if found
invalidTargets := strutil.Difference(c.flagTargets, c.defaultTargets(), true)
if len(invalidTargets) != 0 {
c.UI.Info(fmt.Sprintf("Ignoring invalid targets: %s", strings.Join(invalidTargets, ", ")))
c.flagTargets = strutil.Difference(c.flagTargets, invalidTargets, true)
}
}
// Make sure we can talk to the server

View File

@ -61,6 +61,16 @@ func TestDebugCommand_Run(t *testing.T) {
"Too many arguments",
1,
},
{
"invalid_target",
[]string{
"-duration=1s",
fmt.Sprintf("-output=%s/too_many_args", testDir),
"-target=foo",
},
"Ignoring invalid targets: foo",
0,
},
}
for _, tc := range cases {