diff --git a/go-concourse/concourse/events.go b/go-concourse/concourse/events.go index b06a6b76f0c..b9af6f31a8e 100644 --- a/go-concourse/concourse/events.go +++ b/go-concourse/concourse/events.go @@ -5,10 +5,12 @@ import ( "github.com/concourse/concourse/go-concourse/concourse/eventstream" "github.com/concourse/concourse/go-concourse/concourse/internal" "github.com/tedsuo/rata" + "github.com/vito/go-sse/sse" ) type Events interface { NextEvent() (atc.Event, error) + NextEventRaw() (sse.Event, error) Close() error } diff --git a/go-concourse/concourse/eventstream/stream.go b/go-concourse/concourse/eventstream/stream.go index e99156f6d53..682725fdf55 100644 --- a/go-concourse/concourse/eventstream/stream.go +++ b/go-concourse/concourse/eventstream/stream.go @@ -50,6 +50,11 @@ func (s *SSEEventStream) NextEvent() (atc.Event, error) { } } +func (s *SSEEventStream) NextEventRaw() (sse.Event, error) { + se, err := s.sseReader.Next() + return se, err +} + func (s *SSEEventStream) Close() error { return s.sseReader.Close() }