Plugins: Forward HTTP headers to plugin streaming calls (#101960)

* forward HTTP headers to plugin streaming calls

* fixup

* fix test based on feedback

* improve test assertions
This commit is contained in:
Will Browne
2025-03-12 10:37:07 +00:00
committed by GitHub
parent 8de665cbeb
commit 5a2cba7b01
8 changed files with 747 additions and 59 deletions

View File

@ -66,3 +66,33 @@ func (m *UserHeaderMiddleware) CheckHealth(ctx context.Context, req *backend.Che
return m.BaseHandler.CheckHealth(ctx, req)
}
func (m *UserHeaderMiddleware) SubscribeStream(ctx context.Context, req *backend.SubscribeStreamRequest) (*backend.SubscribeStreamResponse, error) {
if req == nil {
return m.BaseHandler.SubscribeStream(ctx, req)
}
m.applyUserHeader(ctx, req)
return m.BaseHandler.SubscribeStream(ctx, req)
}
func (m *UserHeaderMiddleware) PublishStream(ctx context.Context, req *backend.PublishStreamRequest) (*backend.PublishStreamResponse, error) {
if req == nil {
return m.BaseHandler.PublishStream(ctx, req)
}
m.applyUserHeader(ctx, req)
return m.BaseHandler.PublishStream(ctx, req)
}
func (m *UserHeaderMiddleware) RunStream(ctx context.Context, req *backend.RunStreamRequest, sender *backend.StreamSender) error {
if req == nil {
return m.BaseHandler.RunStream(ctx, req, sender)
}
m.applyUserHeader(ctx, req)
return m.BaseHandler.RunStream(ctx, req, sender)
}