560be84dc8
* CloudWatch: Backport aws-sdk-go-v2 update from external plugin (#107136) (cherry picked froma18ea34688) * Datasources: Update grafana-aws-sdk for new sigv4 middleware and aws-sdk-go v1 removal (#107522) (cherry picked from commit66d9a33cc9) * CloudWatch: Fix proxy transport issue (#107807) (cherry picked fromc3eeb1fcd9) * CloudWatch: Fix http client handling + assume role bug (#107893) (cherry picked from commitf34a9fc0c2) * CloudWatch: Use default region when query region is unset (#109089) (cherry picked from commit5f4097a159) * CloudWatch: Fix handling region for legacy alerts (#109217) (cherry picked from commit2bf9aea8ef) * Update go.mod owners --------- Co-authored-by: Isabella Siu <Isabella.siu@grafana.com>
24 lines
699 B
Go
24 lines
699 B
Go
package datasource
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/grafana/grafana-aws-sdk/pkg/awsauth"
|
|
"github.com/grafana/grafana-aws-sdk/pkg/awsds"
|
|
"github.com/grafana/grafana-plugin-sdk-go/backend"
|
|
"github.com/grafana/grafana-plugin-sdk-go/backend/httpclient"
|
|
)
|
|
|
|
func contextualMiddlewares(ctx context.Context) context.Context {
|
|
cfg := backend.GrafanaConfigFromContext(ctx)
|
|
responseLimitMiddleware := httpclient.ResponseLimitMiddleware(cfg.ResponseLimit())
|
|
ctx = httpclient.WithContextualMiddleware(ctx, responseLimitMiddleware)
|
|
|
|
sigv4Settings := awsds.ReadSigV4Settings(ctx)
|
|
if sigv4Settings.Enabled {
|
|
ctx = httpclient.WithContextualMiddleware(ctx, awsauth.NewSigV4Middleware())
|
|
}
|
|
|
|
return ctx
|
|
}
|