♻️ Move cli code to internal
This commit is contained in:
parent
1abe398c7a
commit
64b2242567
2 changed files with 46 additions and 12 deletions
39
internal/cli/convids/flags.go
Normal file
39
internal/cli/convids/flags.go
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
package convids
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"github.com/spf13/pflag"
|
||||
)
|
||||
|
||||
var Help *bool
|
||||
var Loop *bool
|
||||
var DryRun *bool
|
||||
|
||||
func GetFlags(name string) *pflag.FlagSet {
|
||||
flags := pflag.NewFlagSet(name, pflag.ExitOnError)
|
||||
|
||||
Help = flags.BoolP("help", "h", false, "Get Help")
|
||||
Loop = flags.BoolP("loop", "l", false, "Loop")
|
||||
DryRun = flags.BoolP("dry-run", "d", false, "Do a dry run (won't loop)")
|
||||
|
||||
flags.Usage = func() {
|
||||
fmt.Printf("Usage of %s:\n", name)
|
||||
flags.PrintDefaults()
|
||||
}
|
||||
return flags
|
||||
}
|
||||
|
||||
func ParseFlags(name string, args []string) (*pflag.FlagSet, error) {
|
||||
flags := GetFlags(name)
|
||||
err := flags.Parse(args)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if *DryRun {
|
||||
flags.Set("loop", "false")
|
||||
}
|
||||
|
||||
return flags, nil
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue