Compare commits
8 Commits
aacb8eab8e
..
main
| Author | SHA1 | Date | |
|---|---|---|---|
| d0188d0c26 | |||
| 026a3b6d09 | |||
| 2b85a65f3c | |||
| 1ce6fa895f | |||
| c52fa80449 | |||
| 8cb76eff37 | |||
| ed86526da0 | |||
| cec99cb080 |
@@ -19,7 +19,7 @@ jobs:
|
||||
check:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
- uses: actions/checkout@v7
|
||||
- uses: actions/setup-go@v6
|
||||
with:
|
||||
go-version: 'stable'
|
||||
@@ -35,7 +35,7 @@ jobs:
|
||||
vulnerabilities:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
- uses: actions/checkout@v7
|
||||
- uses: actions/setup-go@v6
|
||||
with:
|
||||
go-version: 'stable'
|
||||
@@ -47,7 +47,7 @@ jobs:
|
||||
check-release:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
- uses: actions/checkout@v7
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- uses: actions/setup-node@v6
|
||||
@@ -74,7 +74,7 @@ jobs:
|
||||
BUILDTOOLS_CONTENT: ${{ secrets.BUILDTOOLS_CONTENT }}
|
||||
GITEA_REPOSITORY: ${{ gitea.repository }}
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
- uses: actions/checkout@v7
|
||||
- uses: buildtool/setup-buildtools-action@v1
|
||||
- name: Build and push
|
||||
run: unset GITEA_TOKEN && build && push
|
||||
@@ -88,7 +88,7 @@ jobs:
|
||||
GITEA_REPOSITORY: ${{ gitea.repository }}
|
||||
environment: prod
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
- uses: actions/checkout@v7
|
||||
- uses: buildtool/setup-buildtools-action@v1
|
||||
- name: Deploy to production
|
||||
run: deploy prod
|
||||
|
||||
@@ -12,7 +12,7 @@ jobs:
|
||||
release:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
- uses: actions/checkout@v7
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- uses: actions/setup-node@v6
|
||||
|
||||
@@ -13,7 +13,7 @@ jobs:
|
||||
env:
|
||||
SKIP: no-commit-to-branch
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
- uses: actions/checkout@v7
|
||||
- uses: actions/setup-go@v6
|
||||
with:
|
||||
go-version: 'stable'
|
||||
|
||||
+2
-2
@@ -1,4 +1,4 @@
|
||||
FROM amd64/golang:1.26.4@sha256:62df9f3b009f61d598279a216566b04e5fee670eb4d979cee1b0235dd53a7571 as modules
|
||||
FROM amd64/golang:1.26.4@sha256:f83d23523668b4ea5b644ae7711b2284f35f3bc3369a02655a8bc30d98586c4d as modules
|
||||
WORKDIR /build
|
||||
ADD go.* /build
|
||||
RUN go mod download
|
||||
@@ -24,7 +24,7 @@ RUN GOOS=linux GOARCH=amd64 go build \
|
||||
FROM scratch as export
|
||||
COPY --from=build /build/coverage.txt /
|
||||
|
||||
FROM node:24.16.0-alpine@sha256:fb71d01345f11b708a3553c66e7c74074f2d506400ea81973343d915cb64eef0
|
||||
FROM node:24.17.0-alpine@sha256:156b55f92e98ccd5ef49578a8cea0df4679826564bad1c9d4ef04462b9f0ded6
|
||||
ENV TZ Europe/Stockholm
|
||||
|
||||
# Install wgc CLI globally for Cosmo Router composition
|
||||
|
||||
@@ -15,8 +15,8 @@ require (
|
||||
github.com/rs/cors v1.11.1
|
||||
github.com/sparetimecoders/goamqp v0.3.3
|
||||
github.com/stretchr/testify v1.11.1
|
||||
github.com/vektah/gqlparser/v2 v2.5.34
|
||||
github.com/wundergraph/graphql-go-tools/v2 v2.4.5
|
||||
github.com/vektah/gqlparser/v2 v2.5.35
|
||||
github.com/wundergraph/graphql-go-tools/v2 v2.5.0
|
||||
gitlab.com/unboundsoftware/eventsourced/amqp v1.9.1
|
||||
gitlab.com/unboundsoftware/eventsourced/eventsourced v1.23.0
|
||||
gitlab.com/unboundsoftware/eventsourced/pg/v2 v2.0.2
|
||||
|
||||
@@ -190,14 +190,14 @@ github.com/urfave/cli/v3 v3.9.0 h1:AV9lIiPv3ukYnxunaCUsHnEozptYmDN2F0+yWqLMn/c=
|
||||
github.com/urfave/cli/v3 v3.9.0/go.mod h1:ysVLtOEmg2tOy6PknnYVhDoouyC/6N42TMeoMzskhso=
|
||||
github.com/valyala/fastjson v1.6.7 h1:ZE4tRy0CIkh+qDc5McjatheGX2czdn8slQjomexVpBM=
|
||||
github.com/valyala/fastjson v1.6.7/go.mod h1:CLCAqky6SMuOcxStkYQvblddUtoRxhYMGLrsQns1aXY=
|
||||
github.com/vektah/gqlparser/v2 v2.5.34 h1:MEea5P0qhdcqfBL45ghKE+qr9laidVHTMHjav5h7ckk=
|
||||
github.com/vektah/gqlparser/v2 v2.5.34/go.mod h1:mFdHLGCio7OGX1fby9ZjTW6FN+qxgmbnBcRIeeScE5s=
|
||||
github.com/vektah/gqlparser/v2 v2.5.35 h1:LEr/wXnTKkOqNn+4tNClYclksXN2781VoBFzzFW51Dk=
|
||||
github.com/vektah/gqlparser/v2 v2.5.35/go.mod h1:cAJ9qwVgPaUkWv6Gn8vn0mqOE0Ui5Pn56wNy5396XWo=
|
||||
github.com/wundergraph/astjson v1.1.0 h1:xORDosrZ87zQFJwNGe/HIHXqzpdHOFmqWgykCLVL040=
|
||||
github.com/wundergraph/astjson v1.1.0/go.mod h1:h12D/dxxnedtLzsKyBLK7/Oe4TAoGpRVC9nDpDrZSWw=
|
||||
github.com/wundergraph/go-arena v1.3.0 h1:n0ng5a1vbd8YGq1u3rMr0vPU5f6AZ1BXIiUhL1UIok8=
|
||||
github.com/wundergraph/go-arena v1.3.0/go.mod h1:ROOysEHWJjLQ8FSfNxZCziagb7Qw2nXY3/vgKRh7eWw=
|
||||
github.com/wundergraph/graphql-go-tools/v2 v2.4.5 h1:hJsNYupt3i2zWD9X00ytcEkgU6Cr+//21oIKMDbydmE=
|
||||
github.com/wundergraph/graphql-go-tools/v2 v2.4.5/go.mod h1:rGG9m74sUyucfvSZ83Mjuq/6qRJetl1CVP872f/dCok=
|
||||
github.com/wundergraph/graphql-go-tools/v2 v2.5.0 h1:Id21OFacHv9gaictZR+dPDYWNFF0WQXbAIE4Y81Vujo=
|
||||
github.com/wundergraph/graphql-go-tools/v2 v2.5.0/go.mod h1:rGG9m74sUyucfvSZ83Mjuq/6qRJetl1CVP872f/dCok=
|
||||
gitlab.com/unboundsoftware/eventsourced/amqp v1.9.1 h1:X6269JoAzHIKCVmtgMHZH3m7xOpACSp37ca3eODe9iU=
|
||||
gitlab.com/unboundsoftware/eventsourced/amqp v1.9.1/go.mod h1:EAs0d6Eh0aDiQkUJlSWErHqgHFQdxx0e8I7aG/2FarY=
|
||||
gitlab.com/unboundsoftware/eventsourced/eventsourced v1.23.0 h1:qcteJH9D7kHaOgLQ0fzlW9dv42hSa0Vluqt7p4kooWA=
|
||||
@@ -240,6 +240,8 @@ go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto=
|
||||
go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE=
|
||||
go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0=
|
||||
go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y=
|
||||
go.yaml.in/yaml/v3 v3.0.4 h1:tfq32ie2Jv2UxXFdLJdh3jXuOzWiL1fo0bu/FbuKpbc=
|
||||
go.yaml.in/yaml/v3 v3.0.4/go.mod h1:DhzuOOF2ATzADvBadXxruRBLzYTpT36CKvDb3+aBEFg=
|
||||
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
||||
golang.org/x/crypto v0.0.0-20190426145343-a29dc8fdc734/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
|
||||
golang.org/x/crypto v0.53.0 h1:QZ4Muo8THX6CizN2vPPd5fBGHyogrdK9fG4wLPFUsto=
|
||||
|
||||
@@ -20,7 +20,7 @@ import (
|
||||
"gitea.unbound.se/unboundsoftware/schemas/graph/model"
|
||||
)
|
||||
|
||||
// region ************************** generated!.gotpl **************************
|
||||
// region ***************************** api!.gotpl *****************************
|
||||
|
||||
// NewExecutableSchema creates an ExecutableSchema from the ResolverRoot interface.
|
||||
func NewExecutableSchema(cfg Config) graphql.ExecutableSchema {
|
||||
@@ -111,6 +111,10 @@ type ComplexityRoot struct {
|
||||
}
|
||||
}
|
||||
|
||||
// endregion ***************************** api!.gotpl *****************************
|
||||
|
||||
// region ************************** generated!.gotpl **************************
|
||||
|
||||
type MutationResolver interface {
|
||||
AddOrganization(ctx context.Context, name string) (*model.Organization, error)
|
||||
AddUserToOrganization(ctx context.Context, organizationID string, userID string) (*model.Organization, error)
|
||||
@@ -129,6 +133,10 @@ type SubscriptionResolver interface {
|
||||
SchemaUpdates(ctx context.Context, ref string) (<-chan *model.SchemaUpdate, error)
|
||||
}
|
||||
|
||||
// endregion ************************** generated!.gotpl **************************
|
||||
|
||||
// region ************************** internal!.gotpl ***************************
|
||||
|
||||
type executableSchema graphql.ExecutableSchemaState[ResolverRoot, DirectiveRoot, ComplexityRoot]
|
||||
|
||||
func (e *executableSchema) Schema() *ast.Schema {
|
||||
@@ -828,7 +836,7 @@ func (ec *executionContext) childFields___Type(ctx context.Context, field graphq
|
||||
return nil, fmt.Errorf("no field named %q was found under type __Type", field.Name)
|
||||
}
|
||||
|
||||
// endregion ************************** generated!.gotpl **************************
|
||||
// endregion ************************** internal!.gotpl ***************************
|
||||
|
||||
// region ***************************** args.gotpl *****************************
|
||||
|
||||
@@ -1076,10 +1084,6 @@ func (ec *executionContext) field___Type_fields_args(ctx context.Context, rawArg
|
||||
|
||||
// endregion ***************************** args.gotpl *****************************
|
||||
|
||||
// region ************************** directives.gotpl **************************
|
||||
|
||||
// endregion ************************** directives.gotpl **************************
|
||||
|
||||
// region **************************** field.gotpl *****************************
|
||||
|
||||
func (ec *executionContext) _APIKey_id(ctx context.Context, field graphql.CollectedField, obj *model.APIKey) (ret graphql.Marshaler) {
|
||||
@@ -3771,6 +3775,9 @@ func (ec *executionContext) _APIKey(ctx context.Context, sel ast.SelectionSet, o
|
||||
}
|
||||
case "key":
|
||||
out.Values[i] = ec._APIKey_key(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
case "organization":
|
||||
out.Values[i] = ec._APIKey_organization(ctx, field, obj)
|
||||
if out.Values[i] == graphql.Null {
|
||||
@@ -4063,10 +4070,16 @@ func (ec *executionContext) _Query(ctx context.Context, sel ast.SelectionSet) gr
|
||||
out.Values[i] = ec.OperationContext.RootResolverMiddleware(innerCtx, func(ctx context.Context) (res graphql.Marshaler) {
|
||||
return ec._Query___type(ctx, field)
|
||||
})
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
atomic.AddUint32(&out.Invalids, 1)
|
||||
}
|
||||
case "__schema":
|
||||
out.Values[i] = ec.OperationContext.RootResolverMiddleware(innerCtx, func(ctx context.Context) (res graphql.Marshaler) {
|
||||
return ec._Query___schema(ctx, field)
|
||||
})
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
atomic.AddUint32(&out.Invalids, 1)
|
||||
}
|
||||
default:
|
||||
panic("unknown field " + strconv.Quote(field.Name))
|
||||
}
|
||||
@@ -4118,6 +4131,9 @@ func (ec *executionContext) _SchemaUpdate(ctx context.Context, sel ast.Selection
|
||||
}
|
||||
case "cosmoRouterConfig":
|
||||
out.Values[i] = ec._SchemaUpdate_cosmoRouterConfig(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
default:
|
||||
panic("unknown field " + strconv.Quote(field.Name))
|
||||
}
|
||||
@@ -4164,8 +4180,14 @@ func (ec *executionContext) _SubGraph(ctx context.Context, sel ast.SelectionSet,
|
||||
}
|
||||
case "url":
|
||||
out.Values[i] = ec._SubGraph_url(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
case "wsUrl":
|
||||
out.Values[i] = ec._SubGraph_wsUrl(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
case "sdl":
|
||||
out.Values[i] = ec._SubGraph_sdl(ctx, field, obj)
|
||||
if out.Values[i] == graphql.Null {
|
||||
@@ -4379,6 +4401,9 @@ func (ec *executionContext) ___Directive(ctx context.Context, sel ast.SelectionS
|
||||
}
|
||||
case "description":
|
||||
out.Values[i] = ec.___Directive_description(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
case "isRepeatable":
|
||||
out.Values[i] = ec.___Directive_isRepeatable(ctx, field, obj)
|
||||
if out.Values[i] == graphql.Null {
|
||||
@@ -4435,6 +4460,9 @@ func (ec *executionContext) ___EnumValue(ctx context.Context, sel ast.SelectionS
|
||||
}
|
||||
case "description":
|
||||
out.Values[i] = ec.___EnumValue_description(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
case "isDeprecated":
|
||||
out.Values[i] = ec.___EnumValue_isDeprecated(ctx, field, obj)
|
||||
if out.Values[i] == graphql.Null {
|
||||
@@ -4442,6 +4470,9 @@ func (ec *executionContext) ___EnumValue(ctx context.Context, sel ast.SelectionS
|
||||
}
|
||||
case "deprecationReason":
|
||||
out.Values[i] = ec.___EnumValue_deprecationReason(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
default:
|
||||
panic("unknown field " + strconv.Quote(field.Name))
|
||||
}
|
||||
@@ -4483,6 +4514,9 @@ func (ec *executionContext) ___Field(ctx context.Context, sel ast.SelectionSet,
|
||||
}
|
||||
case "description":
|
||||
out.Values[i] = ec.___Field_description(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
case "args":
|
||||
out.Values[i] = ec.___Field_args(ctx, field, obj)
|
||||
if out.Values[i] == graphql.Null {
|
||||
@@ -4500,6 +4534,9 @@ func (ec *executionContext) ___Field(ctx context.Context, sel ast.SelectionSet,
|
||||
}
|
||||
case "deprecationReason":
|
||||
out.Values[i] = ec.___Field_deprecationReason(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
default:
|
||||
panic("unknown field " + strconv.Quote(field.Name))
|
||||
}
|
||||
@@ -4541,6 +4578,9 @@ func (ec *executionContext) ___InputValue(ctx context.Context, sel ast.Selection
|
||||
}
|
||||
case "description":
|
||||
out.Values[i] = ec.___InputValue_description(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
case "type":
|
||||
out.Values[i] = ec.___InputValue_type(ctx, field, obj)
|
||||
if out.Values[i] == graphql.Null {
|
||||
@@ -4548,6 +4588,9 @@ func (ec *executionContext) ___InputValue(ctx context.Context, sel ast.Selection
|
||||
}
|
||||
case "defaultValue":
|
||||
out.Values[i] = ec.___InputValue_defaultValue(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
case "isDeprecated":
|
||||
out.Values[i] = ec.___InputValue_isDeprecated(ctx, field, obj)
|
||||
if out.Values[i] == graphql.Null {
|
||||
@@ -4555,6 +4598,9 @@ func (ec *executionContext) ___InputValue(ctx context.Context, sel ast.Selection
|
||||
}
|
||||
case "deprecationReason":
|
||||
out.Values[i] = ec.___InputValue_deprecationReason(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
default:
|
||||
panic("unknown field " + strconv.Quote(field.Name))
|
||||
}
|
||||
@@ -4591,6 +4637,9 @@ func (ec *executionContext) ___Schema(ctx context.Context, sel ast.SelectionSet,
|
||||
out.Values[i] = graphql.MarshalString("__Schema")
|
||||
case "description":
|
||||
out.Values[i] = ec.___Schema_description(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
case "types":
|
||||
out.Values[i] = ec.___Schema_types(ctx, field, obj)
|
||||
if out.Values[i] == graphql.Null {
|
||||
@@ -4603,8 +4652,14 @@ func (ec *executionContext) ___Schema(ctx context.Context, sel ast.SelectionSet,
|
||||
}
|
||||
case "mutationType":
|
||||
out.Values[i] = ec.___Schema_mutationType(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
case "subscriptionType":
|
||||
out.Values[i] = ec.___Schema_subscriptionType(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
case "directives":
|
||||
out.Values[i] = ec.___Schema_directives(ctx, field, obj)
|
||||
if out.Values[i] == graphql.Null {
|
||||
@@ -4651,24 +4706,54 @@ func (ec *executionContext) ___Type(ctx context.Context, sel ast.SelectionSet, o
|
||||
}
|
||||
case "name":
|
||||
out.Values[i] = ec.___Type_name(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
case "description":
|
||||
out.Values[i] = ec.___Type_description(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
case "specifiedByURL":
|
||||
out.Values[i] = ec.___Type_specifiedByURL(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
case "fields":
|
||||
out.Values[i] = ec.___Type_fields(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
case "interfaces":
|
||||
out.Values[i] = ec.___Type_interfaces(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
case "possibleTypes":
|
||||
out.Values[i] = ec.___Type_possibleTypes(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
case "enumValues":
|
||||
out.Values[i] = ec.___Type_enumValues(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
case "inputFields":
|
||||
out.Values[i] = ec.___Type_inputFields(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
case "ofType":
|
||||
out.Values[i] = ec.___Type_ofType(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
case "isOneOf":
|
||||
out.Values[i] = ec.___Type_isOneOf(ctx, field, obj)
|
||||
if out.Values[i] == graphql.RequiredNull {
|
||||
out.Invalids++
|
||||
}
|
||||
default:
|
||||
panic("unknown field " + strconv.Quote(field.Name))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user