diff options
Diffstat (limited to 'graphql/gen_graphql.go')
-rw-r--r-- | graphql/gen_graphql.go | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/graphql/gen_graphql.go b/graphql/gen_graphql.go new file mode 100644 index 00000000..fb0cfa68 --- /dev/null +++ b/graphql/gen_graphql.go @@ -0,0 +1,46 @@ +// +build ignore + +package main + +import ( + "fmt" + "io/ioutil" + "log" + "os" + "path" + + "github.com/vektah/gqlgen/codegen" +) + +func main() { + current, err := os.Getwd() + if err != nil { + log.Fatal(err.Error()) + } + + os.Chdir(path.Join(current, "graphql")) + + fmt.Println("Generating graphql code ...") + + log.SetOutput(ioutil.Discard) + + config, err := codegen.LoadDefaultConfig() + if err != nil { + log.Fatal(err) + } + + schemaRaw, err := ioutil.ReadFile(config.SchemaFilename) + if err != nil { + log.Fatal("unable to open schema: " + err.Error()) + } + config.SchemaStr = string(schemaRaw) + + if err = config.Check(); err != nil { + log.Fatal("invalid config format: " + err.Error()) + } + + err = codegen.Generate(*config) + if err != nil { + log.Fatal(err.Error()) + } +} |