diff --git a/pkg/api/datasources_test.go b/pkg/api/datasources_test.go index 61481bec706..4a3d102176a 100644 --- a/pkg/api/datasources_test.go +++ b/pkg/api/datasources_test.go @@ -543,10 +543,6 @@ func (m *dataSourcesServiceMock) GetDataSourcesByType(ctx context.Context, query return m.expectedDatasources, m.expectedError } -func (m *dataSourcesServiceMock) GetDefaultDataSource(ctx context.Context, query *datasources.GetDefaultDataSourceQuery) (*datasources.DataSource, error) { - return nil, m.expectedError -} - func (m *dataSourcesServiceMock) DeleteDataSource(ctx context.Context, cmd *datasources.DeleteDataSourceCommand) error { return m.expectedError } diff --git a/pkg/services/datasources/datasources.go b/pkg/services/datasources/datasources.go index cc4573fb21c..40c2328ef04 100644 --- a/pkg/services/datasources/datasources.go +++ b/pkg/services/datasources/datasources.go @@ -33,9 +33,6 @@ type DataSourceService interface { // UpdateDataSource updates an existing datasource. UpdateDataSource(ctx context.Context, cmd *UpdateDataSourceCommand) (*DataSource, error) - // GetDefaultDataSource gets the default datasource. - GetDefaultDataSource(ctx context.Context, query *GetDefaultDataSourceQuery) (*DataSource, error) - // GetHTTPTransport gets a datasource specific HTTP transport. GetHTTPTransport(ctx context.Context, ds *DataSource, provider httpclient.Provider, customMiddlewares ...sdkhttpclient.Middleware) (http.RoundTripper, error) diff --git a/pkg/services/datasources/fakes/fake_datasource_service.go b/pkg/services/datasources/fakes/fake_datasource_service.go index 3f9fcf4d560..b49e17b1deb 100644 --- a/pkg/services/datasources/fakes/fake_datasource_service.go +++ b/pkg/services/datasources/fakes/fake_datasource_service.go @@ -102,10 +102,6 @@ func (s *FakeDataSourceService) UpdateDataSource(ctx context.Context, cmd *datas return nil, datasources.ErrDataSourceNotFound } -func (s *FakeDataSourceService) GetDefaultDataSource(ctx context.Context, query *datasources.GetDefaultDataSourceQuery) (*datasources.DataSource, error) { - return nil, nil -} - func (s *FakeDataSourceService) GetHTTPTransport(ctx context.Context, ds *datasources.DataSource, provider httpclient.Provider, customMiddlewares ...sdkhttpclient.Middleware) (http.RoundTripper, error) { rt, err := provider.GetTransport(sdkhttpclient.Options{}) if err != nil { diff --git a/pkg/services/datasources/models.go b/pkg/services/datasources/models.go index 98a27949899..68568868480 100644 --- a/pkg/services/datasources/models.go +++ b/pkg/services/datasources/models.go @@ -234,11 +234,6 @@ type GetDataSourcesByTypeQuery struct { AliasIDs []string } -type GetDefaultDataSourceQuery struct { - OrgID int64 - User *user.SignedInUser -} - // GetDataSourceQuery will get a DataSource based on OrgID as well as the UID (preferred), ID, or Name. // At least one of the UID, ID, or Name properties must be set in addition to OrgID. type GetDataSourceQuery struct { diff --git a/pkg/services/datasources/service/datasource.go b/pkg/services/datasources/service/datasource.go index dc4d749b560..d8757d97dc3 100644 --- a/pkg/services/datasources/service/datasource.go +++ b/pkg/services/datasources/service/datasource.go @@ -2,7 +2,6 @@ package service import ( "context" - "crypto/tls" "encoding/json" "errors" "fmt" @@ -343,22 +342,6 @@ func (s *Service) UpdateDataSource(ctx context.Context, cmd *datasources.UpdateD }) } -func (s *Service) GetDefaultDataSource(ctx context.Context, query *datasources.GetDefaultDataSourceQuery) (*datasources.DataSource, error) { - return s.SQLStore.GetDefaultDataSource(ctx, query) -} - -func (s *Service) GetHTTPClient(ctx context.Context, ds *datasources.DataSource, provider httpclient.Provider) (*http.Client, error) { - transport, err := s.GetHTTPTransport(ctx, ds, provider) - if err != nil { - return nil, err - } - - return &http.Client{ - Timeout: s.getTimeout(ds), - Transport: transport, - }, nil -} - func (s *Service) GetHTTPTransport(ctx context.Context, ds *datasources.DataSource, provider httpclient.Provider, customMiddlewares ...sdkhttpclient.Middleware) (http.RoundTripper, error) { s.ptc.Lock() @@ -388,14 +371,6 @@ func (s *Service) GetHTTPTransport(ctx context.Context, ds *datasources.DataSour return rt, nil } -func (s *Service) GetTLSConfig(ctx context.Context, ds *datasources.DataSource, httpClientProvider httpclient.Provider) (*tls.Config, error) { - opts, err := s.httpClientOptions(ctx, ds) - if err != nil { - return nil, err - } - return httpClientProvider.GetTLSConfig(*opts) -} - func (s *Service) DecryptedValues(ctx context.Context, ds *datasources.DataSource) (map[string]string, error) { decryptedValues := make(map[string]string) secret, exist, err := s.SecretsStore.Get(ctx, ds.OrgID, ds.Name, kvstore.DataSourceSecretType) diff --git a/pkg/services/datasources/service/datasource_test.go b/pkg/services/datasources/service/datasource_test.go index 9cc7dd8a4d8..bdc8578b06d 100644 --- a/pkg/services/datasources/service/datasource_test.go +++ b/pkg/services/datasources/service/datasource_test.go @@ -939,32 +939,6 @@ func TestService_GetHttpTransport(t *testing.T) { require.Equal(t, "Ok", bodyStr) }) - t.Run("Should use request timeout if configured in JsonData", func(t *testing.T) { - provider := httpclient.NewProvider() - - sjson := simplejson.NewFromAny(map[string]any{ - "timeout": 19, - }) - - sqlStore := db.InitTestDB(t) - secretsService := secretsmng.SetupTestService(t, fakes.NewFakeSecretsStore()) - secretsStore := secretskvs.NewSQLSecretsKVStore(sqlStore, secretsService, log.New("test.logger")) - quotaService := quotatest.New(false, nil) - dsService, err := ProvideService(sqlStore, secretsService, secretsStore, cfg, featuremgmt.WithFeatures(), acmock.New(), acmock.NewMockedPermissionsService(), quotaService, &pluginstore.FakePluginStore{}) - require.NoError(t, err) - ds := datasources.DataSource{ - ID: 1, - URL: "http://k8s:8001", - Type: "Kubernetes", - JsonData: sjson, - } - - client, err := dsService.GetHTTPClient(context.Background(), &ds, provider) - require.NoError(t, err) - require.NotNil(t, client) - require.Equal(t, 19*time.Second, client.Timeout) - }) - t.Run("Should populate SigV4 options if configured in JsonData", func(t *testing.T) { var configuredOpts sdkhttpclient.Options provider := httpclient.NewProvider(sdkhttpclient.ProviderOptions{ diff --git a/pkg/services/datasources/service/store.go b/pkg/services/datasources/service/store.go index b8afc57dbad..22f90a9303d 100644 --- a/pkg/services/datasources/service/store.go +++ b/pkg/services/datasources/service/store.go @@ -26,7 +26,6 @@ type Store interface { GetDataSource(context.Context, *datasources.GetDataSourceQuery) (*datasources.DataSource, error) GetDataSources(context.Context, *datasources.GetDataSourcesQuery) ([]*datasources.DataSource, error) GetDataSourcesByType(context.Context, *datasources.GetDataSourcesByTypeQuery) ([]*datasources.DataSource, error) - GetDefaultDataSource(context.Context, *datasources.GetDefaultDataSourceQuery) (*datasources.DataSource, error) DeleteDataSource(context.Context, *datasources.DeleteDataSourceCommand) error AddDataSource(context.Context, *datasources.AddDataSourceCommand) (*datasources.DataSource, error) UpdateDataSource(context.Context, *datasources.UpdateDataSourceCommand) (*datasources.DataSource, error) @@ -125,20 +124,6 @@ func (ss *SqlStore) GetDataSourcesByType(ctx context.Context, query *datasources }) } -// GetDefaultDataSource is used to get the default datasource of organization -func (ss *SqlStore) GetDefaultDataSource(ctx context.Context, query *datasources.GetDefaultDataSourceQuery) (*datasources.DataSource, error) { - dataSource := datasources.DataSource{} - return &dataSource, ss.db.WithDbSession(ctx, func(sess *db.Session) error { - exists, err := sess.Where("org_id=? AND is_default=?", query.OrgID, true).Get(&dataSource) - - if !exists { - return datasources.ErrDataSourceNotFound - } - - return err - }) -} - // DeleteDataSource removes a datasource by org_id as well as either uid (preferred), id, or name // and is added to the bus. It also removes permissions related to the datasource. func (ss *SqlStore) DeleteDataSource(ctx context.Context, cmd *datasources.DeleteDataSourceCommand) error { diff --git a/pkg/services/datasources/service/store_test.go b/pkg/services/datasources/service/store_test.go index 1dfdb42c3cb..942136ac2e0 100644 --- a/pkg/services/datasources/service/store_test.go +++ b/pkg/services/datasources/service/store_test.go @@ -2,7 +2,6 @@ package service import ( "context" - "errors" "strconv" "testing" "time" @@ -492,61 +491,3 @@ func TestIntegrationDataAccess(t *testing.T) { }) }) } - -func TestIntegrationGetDefaultDataSource(t *testing.T) { - if testing.Short() { - t.Skip("skipping integration test") - } - - t.Run("should return error if there is no default datasource", func(t *testing.T) { - db := db.InitTestDB(t) - ss := SqlStore{db: db} - - cmd := datasources.AddDataSourceCommand{ - OrgID: 10, - Name: "nisse", - Type: datasources.DS_GRAPHITE, - Access: datasources.DS_ACCESS_DIRECT, - URL: "http://test", - } - - _, err := ss.AddDataSource(context.Background(), &cmd) - require.NoError(t, err) - - query := datasources.GetDefaultDataSourceQuery{OrgID: 10} - _, err = ss.GetDefaultDataSource(context.Background(), &query) - require.Error(t, err) - assert.True(t, errors.Is(err, datasources.ErrDataSourceNotFound)) - }) - - t.Run("should return default datasource if exists", func(t *testing.T) { - db := db.InitTestDB(t) - ss := SqlStore{db: db} - - cmd := datasources.AddDataSourceCommand{ - OrgID: 10, - Name: "default datasource", - Type: datasources.DS_GRAPHITE, - Access: datasources.DS_ACCESS_DIRECT, - URL: "http://test", - IsDefault: true, - } - - _, err := ss.AddDataSource(context.Background(), &cmd) - require.NoError(t, err) - - query := datasources.GetDefaultDataSourceQuery{OrgID: 10} - dataSource, err := ss.GetDefaultDataSource(context.Background(), &query) - require.NoError(t, err) - assert.Equal(t, "default datasource", dataSource.Name) - }) - - t.Run("should not return default datasource of other organisation", func(t *testing.T) { - db := db.InitTestDB(t) - ss := SqlStore{db: db} - query := datasources.GetDefaultDataSourceQuery{OrgID: 1} - _, err := ss.GetDefaultDataSource(context.Background(), &query) - require.Error(t, err) - assert.True(t, errors.Is(err, datasources.ErrDataSourceNotFound)) - }) -}