...
1
13
14
15
16
17
18 package main
19
20 import (
21 "flag"
22 "path/filepath"
23
24 "github.com/spf13/pflag"
25 generatorargs "k8s.io/code-generator/cmd/client-gen/args"
26 "k8s.io/code-generator/cmd/client-gen/generators"
27 "k8s.io/code-generator/pkg/util"
28 "k8s.io/gengo/args"
29 "k8s.io/klog/v2"
30 )
31
32 func main() {
33 klog.InitFlags(nil)
34 genericArgs, customArgs := generatorargs.NewDefaults()
35
36
37
38 genericArgs.GoHeaderFilePath = filepath.Join(args.DefaultSourceTree(), util.BoilerplatePath())
39
40 genericArgs.AddFlags(pflag.CommandLine)
41 customArgs.AddFlags(pflag.CommandLine, "")
42 flag.Set("logtostderr", "true")
43 pflag.CommandLine.AddGoFlagSet(flag.CommandLine)
44 pflag.Parse()
45
46
47 for _, pkg := range customArgs.Groups {
48 for _, v := range pkg.Versions {
49 genericArgs.InputDirs = append(genericArgs.InputDirs, v.Package)
50 }
51 }
52
53 if err := generatorargs.Validate(genericArgs); err != nil {
54 klog.Fatalf("Error: %v", err)
55 }
56
57 if err := genericArgs.Execute(
58 generators.NameSystems(util.PluralExceptionListToMapOrDie(customArgs.PluralExceptions)),
59 generators.DefaultNameSystem(),
60 generators.Packages,
61 ); err != nil {
62 klog.Fatalf("Error: %v", err)
63 }
64 }
65
View as plain text