0

how do i create a makefile that takes in 2 arguments? myapp written in go, uses cobra cli. has a command that takes in 2 arguments(flags).

this works

$ go build; myapp mycmd --flag1=myvalue1 --flag2=myvalue2

in my make file i have

//makefile
run:
    @echo Building and Running
    $(GO) build -i -o myapp .
    ./myapp start $(ARGS)

so in CLI, when I try

$ make run ARGS=--flag1=arg1--flag2=arg2
or
$ make run ARGS=--flag1=arg1,--flag2=arg2

doesn't read in the flag values how do i read in the 2 flag values, it only seems to read in 1 flag value.

Jonathan Hall
  • 75,165
  • 16
  • 143
  • 189
not_fubar_yet
  • 194
  • 15

1 Answers1

2

make run ARGS=--flag1=arg1--flag2=arg2

Has no separator between the flags

make run ARGS=--flag1=arg1,--flag2=arg2

Cobra doesn't use ',' as a default flag separator.

Try:
make run ARGS='--flag1=arg1 --flag2=arg2'

Tried against a cobra CLI of my own, works perfectly.

Sufiyan Parkar
  • 167
  • 2
  • 12