searcherside/infrastructure/db/entc.go

45 lines
1,007 B
Go
Raw Normal View History

//go:build ignore
package main
import (
"log"
"path/filepath"
"entgo.io/contrib/entgql"
"entgo.io/ent/entc"
"entgo.io/ent/entc/gen"
)
func main() {
ex, err := entgql.NewExtension(
entgql.WithWhereInputs(true),
// Tell Ent to generate a GraphQL schema for
// the Ent schema in a file named ent.graphql.
entgql.WithSchemaGenerator(),
entgql.WithSchemaPath(filepath.Join("assets", "api", "ent.graphql")),
entgql.WithConfigPath("gqlgen.yml"),
)
if err != nil {
log.Fatalf("creating entgql extension: %v", err)
}
opts := []entc.Option{
entc.Extensions(ex),
}
generatorConfig := &gen.Config{
Target: filepath.Join("internal", "ent"),
Package: "code.icb4dc0.de/prskr/searcherside/internal/ent",
Features: []gen.Feature{
gen.FeatureVersionedMigration,
gen.FeatureUpsert,
gen.FeaturePrivacy,
gen.FeatureEntQL,
},
}
if err := entc.Generate("./infrastructure/db/schema", generatorConfig, opts...); err != nil {
log.Fatalf("running ent codegen: %v", err)
}
}