in main.go [37:67]
func main() {
opts := newOptions()
p := flags.NewParser(opts, flags.Default)
// if no args just print help
if len(os.Args) == 1 {
p.WriteHelp(os.Stderr)
os.Exit(0)
}
_, err := p.ParseArgs(os.Args)
if err != nil {
// ErrHelp indicates that the help message was printed so we
// can exit
if val, ok := err.(*flags.Error); ok && val.Type == flags.ErrHelp {
os.Exit(0)
}
p.WriteHelp(os.Stderr)
os.Exit(1)
}
if opts.Version {
fmt.Println("Version:", Version)
fmt.Println("SupportedFirecrackerVersion:", SupportedFirecrackerVersion)
os.Exit(0)
}
defer opts.Close()
if err := runVMM(context.Background(), opts); err != nil {
log.Fatalf(err.Error())
}
}