Datasources: Update grafana-aws-sdk for new sigv4 middleware and aws-sdk-go v1 removal (#107522)
Datasources: Update grafana-aws-sdk
This commit is contained in:
committed by
GitHub
parent
4414b92e93
commit
66d9a33cc9
@@ -4,9 +4,7 @@ import (
|
||||
"net/http"
|
||||
"time"
|
||||
|
||||
"github.com/grafana/grafana-aws-sdk/pkg/awsds"
|
||||
awssdk "github.com/grafana/grafana-aws-sdk/pkg/sigv4"
|
||||
"github.com/grafana/grafana-plugin-sdk-go/backend/gtime"
|
||||
"github.com/grafana/grafana-aws-sdk/pkg/awsauth"
|
||||
sdkhttpclient "github.com/grafana/grafana-plugin-sdk-go/backend/httpclient"
|
||||
"github.com/mwitkow/go-conntrack"
|
||||
|
||||
@@ -46,21 +44,7 @@ func New(cfg *setting.Cfg, validator validations.DataSourceRequestURLValidator,
|
||||
|
||||
// SigV4 signing should be performed after all headers are added
|
||||
if cfg.SigV4AuthEnabled {
|
||||
authSettings := awsds.AuthSettings{
|
||||
AllowedAuthProviders: cfg.AWSAllowedAuthProviders,
|
||||
AssumeRoleEnabled: cfg.AWSAssumeRoleEnabled,
|
||||
ExternalID: cfg.AWSExternalId,
|
||||
ListMetricsPageLimit: cfg.AWSListMetricsPageLimit,
|
||||
SecureSocksDSProxyEnabled: cfg.SecureSocksDSProxy.Enabled,
|
||||
}
|
||||
if cfg.AWSSessionDuration != "" {
|
||||
sessionDuration, err := gtime.ParseDuration(cfg.AWSSessionDuration)
|
||||
if err == nil {
|
||||
authSettings.SessionDuration = &sessionDuration
|
||||
}
|
||||
}
|
||||
|
||||
middlewares = append(middlewares, awssdk.SigV4MiddlewareWithAuthSettings(cfg.SigV4VerboseLogging, authSettings))
|
||||
middlewares = append(middlewares, awsauth.NewSigV4Middleware())
|
||||
}
|
||||
|
||||
setDefaultTimeoutOptions(cfg)
|
||||
|
||||
@@ -5,7 +5,7 @@ import (
|
||||
|
||||
"github.com/grafana/grafana/pkg/services/validations"
|
||||
|
||||
awssdk "github.com/grafana/grafana-aws-sdk/pkg/sigv4"
|
||||
"github.com/grafana/grafana-aws-sdk/pkg/awsauth"
|
||||
sdkhttpclient "github.com/grafana/grafana-plugin-sdk-go/backend/httpclient"
|
||||
"github.com/grafana/grafana/pkg/infra/tracing"
|
||||
"github.com/grafana/grafana/pkg/setting"
|
||||
@@ -63,7 +63,7 @@ func TestHTTPClientProvider(t *testing.T) {
|
||||
require.Equal(t, sdkhttpclient.ResponseLimitMiddlewareName, o.Middlewares[6].(sdkhttpclient.MiddlewareName).MiddlewareName())
|
||||
require.Equal(t, HostRedirectValidationMiddlewareName, o.Middlewares[7].(sdkhttpclient.MiddlewareName).MiddlewareName())
|
||||
require.Equal(t, sdkhttpclient.ErrorSourceMiddlewareName, o.Middlewares[8].(sdkhttpclient.MiddlewareName).MiddlewareName())
|
||||
require.Equal(t, awssdk.SigV4MiddlewareName, o.Middlewares[9].(sdkhttpclient.MiddlewareName).MiddlewareName())
|
||||
require.Equal(t, awsauth.NewSigV4Middleware().(sdkhttpclient.MiddlewareName).MiddlewareName(), o.Middlewares[9].(sdkhttpclient.MiddlewareName).MiddlewareName())
|
||||
})
|
||||
|
||||
t.Run("When creating new provider and http logging is enabled for one plugin, it should apply expected middleware", func(t *testing.T) {
|
||||
|
||||
Reference in New Issue
Block a user