schemas / check (push) Skipped
schemas / vulnerabilities (push) Skipped
schemas / check-release (push) Skipped
schemas / build (push) Skipped
pre-commit / pre-commit (push) Skipped
schemas / vulnerabilities (pull_request) Successful in 58s
schemas / check-release (pull_request) Successful in 59s
schemas / check (pull_request) Successful in 1m58s
pre-commit / pre-commit (pull_request) Successful in 2m54s
schemas / build (pull_request) Successful in 6m9s
schemas / deploy-prod (pull_request) Skipped
Move eventsourced modules from gitlab.com/unboundsoftware to codeberg.org/eventsourced. The Codeberg amqp publisher is built on go-messaging-amqp, so the service switches from sparetimecoders/goamqp as well: - routing keys are mapped on the eventsourced publisher (newEventPublisher) - cache consumers are typed handlers; Cache.Update drops the goamqp shape - publishes detach from the request context (uncancelledPublisher) - closeEvents is buffered and the receiver also watches rootCtx - WithPrefetchLimit dropped (no-op, 20 is the default) - amqp091-go v1.15.0 (GO-2026-6372) - renovate groups codeberg.org/messaging with eventsourced Only transient consumer queues are used, so no queue cutover is needed. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Dpb7Y47dPz246oY9bCzh7k
42 lines
984 B
Go
42 lines
984 B
Go
package graph
|
|
|
|
import (
|
|
"context"
|
|
|
|
"codeberg.org/eventsourced/eventsourced"
|
|
|
|
"gitea.unbound.se/unboundsoftware/schemas/domain"
|
|
"gitea.unbound.se/unboundsoftware/schemas/graph/model"
|
|
)
|
|
|
|
func (r *Resolver) fetchSubGraph(ctx context.Context, subGraphId string) (*domain.SubGraph, error) {
|
|
subGraph := &domain.SubGraph{BaseAggregate: eventsourced.BaseAggregateFromString(subGraphId)}
|
|
_, err := r.handler(ctx, subGraph)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return subGraph, nil
|
|
}
|
|
|
|
func (r *Resolver) toGqlSubGraph(subGraph *domain.SubGraph) *model.SubGraph {
|
|
return &model.SubGraph{
|
|
ID: subGraph.ID.String(),
|
|
Service: subGraph.Service,
|
|
URL: subGraph.Url,
|
|
WsURL: subGraph.WSUrl,
|
|
Sdl: subGraph.Sdl,
|
|
ChangedBy: subGraph.ChangedBy,
|
|
ChangedAt: subGraph.ChangedAt,
|
|
}
|
|
}
|
|
|
|
func (r *Resolver) stringEqual(s1, s2 *string) bool {
|
|
if s1 == nil && s2 == nil {
|
|
return true
|
|
}
|
|
if s1 != nil && s2 != nil && *s1 == *s2 {
|
|
return true
|
|
}
|
|
return false
|
|
}
|