Home

gen @main - refs - log -
-
https://git.jolheiser.com/gen.git
Generate Go flags and Nix module
gen / contrib / main.go
- raw -
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
//go:build ignore

package main

import (
	"flag"
	"fmt"
	"os"
)

func main() {
	c := defaultArgs()

	fs := flag.NewFlagSet("app", flag.ExitOnError)
	registerFlags(fs, &c)
	fs.Parse(os.Args[1:])
	// With ff:
	//
	//	fs.String("config", "app.jsonnet", "Path to config file")
	//	parser := ffjsonnet.ParseConfig{Schema: schema}
	//	if err := ff.Parse(fs, os.Args[1:],
	//		ff.WithEnvVarPrefix("APP"),
	//		ff.WithConfigFileFlag("config"),
	//		ff.WithAllowMissingConfigFile(true),
	//		ff.WithConfigFileParser(parser.Parse),
	//	); err != nil {
	//		fmt.Fprintln(os.Stderr, err)
	//		os.Exit(2)
	//	}

	if err := c.validate(); err != nil {
		fmt.Fprintln(os.Stderr, err)
		os.Exit(2)
	}

	fmt.Printf("%+v\n", c)
}