forked from buildbarn/bb-portal
-
Notifications
You must be signed in to change notification settings - Fork 0
/
gqlgen.yml
94 lines (83 loc) · 3.11 KB
/
gqlgen.yml
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# Where are all the schema files located? globs are supported eg src/**/*.graphqls
schema:
- ./internal/graphql/schema/scalars.graphql
- ./internal/graphql/schema/ent.graphql
- ./internal/graphql/schema/custom.graphql
# Where should the generated server code go?
exec:
filename: internal/graphql/server_gen.go
package: graphql
# Uncomment to enable federation
#federation:
# filename: federation_gen.go
# package: graphql
# version: 2
# Where should any generated models go?
model:
filename: internal/graphql/model/models_gen.go
package: model
# Where should the resolver implementations go?
resolver:
layout: follow-schema
dir: internal/graphql/
package: graphql
# Optional: turn on use ` + "`" + `gqlgen:"fieldName"` + "`" + ` tags in your models
# struct_tag: json
# Optional: turn on to use []Thing instead of []*Thing
# omit_slice_element_pointers: false
# Optional: turn off to make struct-type struct fields not use pointers
# e.g. type Thing struct { FieldA OtherThing } instead of { FieldA *OtherThing }
# struct_fields_always_pointers: true
# Optional: turn off to make resolvers return values instead of pointers for structs
# resolvers_always_return_pointers: true
# Optional: set to speed up generation time by not performing a final validation pass.
# skip_validation: true
# gqlgen will search for any type names in the schema in these go packages
# if they match it will use them, otherwise it will generate them.
autobind:
- "github.com/buildbarn/bb-portal/ent/gen/ent"
# This section declares type mapping between the GraphQL and go type systems
#
# The first line in each type will be used as defaults for resolver arguments and
# modelgen, the others will be allowed when binding to fields. Configure them to
# your liking
models:
ID:
model:
- github.com/99designs/gqlgen/graphql.ID
Node:
model:
# ent.Noder is the new interface generated by the Node template.
- github.com/buildbarn/bb-portal/ent/gen/ent.Noder
Int:
model:
- github.com/99designs/gqlgen/graphql.Int
- github.com/99designs/gqlgen/graphql.Int64
- github.com/99designs/gqlgen/graphql.Int32
- github.com/99designs/gqlgen/graphql.Uint
- github.com/99designs/gqlgen/graphql.Uint32
- github.com/99designs/gqlgen/graphql.Uint64
UUID:
model:
- github.com/buildbarn/bb-portal/pkg/uuidgql.UUID
Duration:
model:
- github.com/99designs/gqlgen/graphql.Duration
BlobReference:
extraFields:
Blob:
description: "The blob being referenced"
type: "*github.com/buildbarn/bb-portal/ent/gen/ent.Blob"
ActionProblem:
extraFields:
Problem:
description: "The underlying BazelInvocationProblem row"
type: "*github.com/buildbarn/bb-portal/ent/gen/ent.BazelInvocationProblem"
TestResult:
extraFields:
BESTestResult:
description: "TestResult object from the Build Event Stream"
type: "*github.com/buildbarn/bb-portal/third_party/bazel/gen/bes.TestResult"
TestResultID:
description: "IDs extracted for later use"
type: "github.com/buildbarn/bb-portal/internal/graphql/model.TestResultID"