Serge Zaitsev
063160aae2
Chore: pass url parameters through context.Context ( #38826 )
...
* pass url parameters through context.Context
* fix url param names without colon prefix
* change context params to vars
* replace url vars in tests using new api
* rename vars to params
* add some comments
* rename seturlvars to seturlparams
2021-09-14 18:34:56 +02:00
Arve Knudsen
78596a6756
Migrate to Wire for dependency injection ( #32289 )
...
Fixes #30144
Co-authored-by: dsotirakis <sotirakis.dim@gmail.com >
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com >
Co-authored-by: Ida Furjesova <ida.furjesova@grafana.com >
Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com >
Co-authored-by: Will Browne <wbrowne@users.noreply.github.com >
Co-authored-by: Leon Sorokin <leeoniya@gmail.com >
Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com >
Co-authored-by: spinillos <selenepinillos@gmail.com >
Co-authored-by: Karl Persson <kalle.persson@grafana.com >
Co-authored-by: Leonard Gram <leo@xlson.com >
2021-08-25 15:11:22 +02:00
Stephanie Hingtgen
db2e0d46b7
Update http error code when datasource health check fails ( #37895 )
...
Since the datasource settings are configured by the user, the health check error could be a client error. A 506 error may be sufficient as well.
2021-08-16 09:49:34 +03:00
Alexander Emelin
e799257637
Live: stream resubmit on ds change, fix old ds settings in RunStream ( #34130 )
2021-05-18 21:39:56 +03:00
Carl Bergquist
5ec530f3fc
API: Return 409 on datasource version conflict ( #32425 )
...
Signed-off-by: bergquist <carl.bergquist@gmail.com >
Co-authored-by: Will Browne <wbrowne@users.noreply.github.com >
2021-03-29 16:03:15 +02:00
Carl Bergquist
eb241b960f
API: Datasource endpoint should return 400 bad request if id and orgId is invalid ( #32392 )
...
* return 400 bad request if id and orgId is invalid
Signed-off-by: bergquist <carl.bergquist@gmail.com >
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com >
2021-03-29 08:56:58 +02:00
Arve Knudsen
87c3a2b790
PluginManager: Make Plugins, Renderer and DataSources non-global ( #31866 )
...
* PluginManager: Make Plugins and DataSources non-global
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* Fix integration tests
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* Replace outdated command
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* DashboardService: Ensure it gets constructed with necessary parameters
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* Fix build
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* DashboardService: Ensure it gets constructed with necessary parameters
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* Remove dead code
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* Fix test
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* Fix test
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* Remove FocusConvey
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* Fix test
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* Remove dead code
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* Undo interface changes
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* Backend: Move tsdbifaces.RequestHandler to plugins.DataRequestHandler
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* Rename to DataSourceCount
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* Consolidate dashboard interfaces into one
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* Fix tests
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* Fix tests
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* Fix test
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* Fix tests
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* Fix tests
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* Fix tests
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* Fix tests
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* Fix dashboard integration tests
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
2021-03-17 16:06:10 +01:00
Arve Knudsen
b79e61656a
Introduce TSDB service ( #31520 )
...
* Introduce TSDB service
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
Co-authored-by: Erik Sundell <erik.sundell87@gmail.com >
Co-authored-by: Will Browne <will.browne@grafana.com >
Co-authored-by: Torkel Ödegaard <torkel@grafana.org >
Co-authored-by: Will Browne <wbrowne@users.noreply.github.com >
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com >
2021-03-08 07:02:49 +01:00
Alex Khomenko
6db4b40d5b
Data source list: Use Card component ( #31326 )
...
* Replace DataSourcesListItem with Card
* Add tests
* Remove unused styles
* Make card heading semi bold
* Make heading semi-bold
* Show type name instead of type id
* Fix key warning
* Update Card
* Fix tests
* Make typeName optional
* remove styling that was just a test
* Make typeName non-optional and fix tests
* Update list key
Co-authored-by: Torkel Ödegaard <torkel@grafana.com >
2021-02-22 14:02:10 +02:00
Hugo Häggmark
3d41267fc4
Chore: Moves common and response into separate packages ( #30298 )
...
* Chore: moves common and response into separate packages
* Chore: moves common and response into separate packages
* Update pkg/api/utils/common.go
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com >
* Chore: changes after PR comments
* Chore: move wrap to routing package
* Chore: move functions in common to response package
* Chore: move functions in common to response package
* Chore: formats imports
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com >
2021-01-15 14:43:20 +01:00
Kyle Brandt
1c1a800bc0
API: Add by UID routes for data sources ( #29884 )
...
- also add Get by UID+OrgID to datasource cache
- Refactor backend commands for Delete and Get to be unified
2021-01-13 13:16:27 -05:00
ying-jeanne
375e8e4fd0
SQLStore: customise the limit of retrieved datasources per organisation ( #29358 )
...
* SQLStore: customise the limit of retrieved datasources per organisation
* update all suggestions regarding nil or 0 as default
* Apply suggestions from code review
Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com >
* correct default.ini description + adding unittest
* Apply suggestions from code review
Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com >
* modify unittest name
Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com >
Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com >
2020-12-28 12:24:42 +01:00
Arve Knudsen
294770f411
Chore: Handle wrapped errors ( #29223 )
...
* Chore: Handle wrapped errors
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com >
2020-11-19 13:34:28 +01:00
Agnès Toulet
8dc75f79f7
API: Enrich endpoints with ID ( #26691 )
2020-07-31 08:22:09 +02:00
Arve Knudsen
41d432b5ae
Chore: Enable whitespace linter ( #25903 )
...
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
2020-07-06 20:17:28 +02:00
Arve Knudsen
d352c213b3
API: Recognize MSSQL data source URLs ( #25629 )
...
* API: Recognize MSSQL URLs
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
* Move MSSQL URL validation into mssql package
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com >
2020-06-17 11:17:11 +02:00
Marcus Efraimsson
c0f3b2929c
Backend plugins: Refactor to allow shared contract between core and external backend plugins ( #25472 )
...
Refactor to allow shared contract between core and external backend plugins
allowing core backend data sources in Grafana to be implemented in same
way as an external backend plugin.
Use v0.67.0 of sdk.
Add tests for verifying plugin is restarted when process is killed.
Enable strict linting for backendplugin packages
2020-06-11 16:14:05 +02:00
Arve Knudsen
164242f5fd
Data sources: Don't fail if URL doesn't specify protocol ( #24497 )
2020-05-12 13:04:18 +02:00
Kyle Brandt
80e1191ca0
Backend Plugins: (breaking change) Add PluginContext ( #23788 )
...
* breaking change for newer backend plugins
* use exported protobuf converters and sdk types to reduce duplicate code
* uses grafana-plugin-sdk-go@v0.54 .0
2020-04-23 14:08:21 -04:00
Arve Knudsen
7d88018531
DataSourceProxy: Handle URL parsing error ( #23731 )
...
* pluginproxy: Handle URL parsing error
* pkg/api: Validate data source URLs
* pkg/api: Return 400 for URL validation error
2020-04-22 10:30:06 +02:00
Marcus Efraimsson
871ad73414
Backend plugins: Renderer v2 plugin ( #23625 )
...
grafana-plugin-model is legacy and is replaced by new backend
plugins SDK and architecture. Renderer is not part of SDK and
we want to keep it that way for now since it's highly unlikely there
will be more than one kind of renderer plugin.
So this PR adds support for renderer plugin v2.
Also adds support sending a Device Scale Factor parameter to the
plugin v2 remote rendering service and by that replaces #22474 .
Adds support sending a Headers parameter to the plugin v2 and
remote rendering service which for now only include
Accect-Language header (the user locale in browser when using
Grafana), ref grafana/grafana-image-renderer#45 .
Fixes health check json details response.
Adds image renderer plugin configuration settings in defaults.ini
and sample.ini.
Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com >
2020-04-21 16:16:41 +02:00
Andrej Ocenas
e5dd7efdee
Provisioning: Allows specifying uid for datasource and use that in derived fields ( #23585 )
...
* Add uid to datasource
* Fix uid passing when provisioning
* Better error handling and Uid column type change
* Fix test and strict null error counts
* Add backend tests
* Add tests
* Fix strict null checks
* Update test
* Improve tests
* Update pkg/services/sqlstore/datasource.go
Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com >
* Variable rename
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com >
2020-04-20 15:48:38 +02:00
Carl Bergquist
579abad9cc
Plugins: Return jsondetails as an json object instead of raw json on datasource healthchecks. ( #22859 )
2020-03-18 12:08:52 +01:00
Carl Bergquist
ebc9549cbc
Add support for sending health check to datasource plugins. ( #22771 )
...
closes #21519
ref grafana/grafana-plugin-sdk-go#93
2020-03-13 12:31:44 +01:00
Carl Bergquist
5f94d31da9
Send jsondata for Datasources on DatasourceConfig for backend plugins ( #22681 )
...
ref https://github.com/grafana/grafana-plugin-sdk-go/pull/84
2020-03-10 15:18:27 +01:00
Carl Bergquist
3fdd2648b1
Chore: Avoid aliasing importing models in api package ( #22492 )
2020-03-04 12:57:20 +01:00
Marcus Efraimsson
e6cec8dbdc
Backend plugins: Prepare and clean request headers before resource calls ( #22321 )
...
Moves common request proxy utilities to proxyutil package with
support for removing X-Forwarded-Host, X-Forwarded-Port,
X-Forwarded-Proto headers, setting X-Forwarded-For header
and cleaning Cookie header.
Using the proxyutil package to prepare and clean request
headers before resource calls.
Closes #21512
2020-03-03 11:45:16 +01:00
Marcus Efraimsson
9d7c74ef91
Backend Plugins: Provide proper plugin config to plugins ( #21985 )
...
Properly provides plugin configs to backend plugins.
Uses v0.16.0 of grafana-plugin-sdk-go-
Ref #21512
Ref #19667
2020-02-19 19:17:05 +01:00
Marcus Efraimsson
0390b5601e
Backend plugins: Implement support for resources ( #21805 )
...
Implements initial support for resources using v0.14.0 of SDK.
Ref #21512
2020-01-31 11:15:50 +01:00
Sofia Papagiannaki
b5f0a5d5ca
Api: Readonly datasources should not be created via the API ( #19006 )
...
* Readonly datasources should not be created via the API
* Return correct `ReadOnly` value in GetDataSourceByName
2019-09-17 12:29:43 +03:00
Leonard Gram
3245227016
permissions: cleanup.
2018-10-17 15:58:52 +02:00
Leonard Gram
1329c70965
codestyle
2018-10-16 14:22:50 +02:00
Leonard Gram
ec9ed5c830
Removes unused code.
2018-10-11 13:52:23 +02:00
Leonard Gram
ccfcf02e33
Refactors ds permissions to a filter.
2018-10-10 14:25:57 +02:00
Torkel Ödegaard
162a95bff9
wip: going in circles
2018-10-01 19:31:03 +02:00
Torkel Ödegaard
b3c78f1265
wip: data source permissions hooks
2018-10-01 15:38:55 +02:00
Marcus Efraimsson
eb1b9405b2
return proper payload from api when updating datasource
2018-08-07 17:56:02 +02:00
Austin Winstanley
defb0396b7
Return a 404 when deleting a datasource through the API if it doesn't exist and add a test for it to confirm #12313
2018-06-22 21:15:36 -05:00
Julian Kornberger
0a415c50d0
Make golint happier
2018-03-22 22:38:44 +01:00
Julian Kornberger
7aab6a8887
Make golint happier
2018-03-22 12:40:21 +01:00
Dan Cech
c0ecdee375
rename Context to ReqContext
2018-03-07 11:54:50 -05:00
Dan Cech
338655dd37
move Context and session out of middleware
2018-03-06 18:16:49 -05:00
Marcus Efraimsson
909601d6ab
api: fix so that datasources functions returns Response
2017-11-16 16:29:05 +01:00
bergquist
36676e23c1
datasource as cfg: adds readonly datasources
2017-11-15 14:30:32 +01:00
bergquist
d68bfaa8be
datasource as cfg: typo
2017-10-25 12:21:06 +02:00
bergquist
89923bf77a
datasources: change to optimisic concurrency
...
prerequisite for #9504
2017-10-23 07:55:16 +02:00
Torkel Ödegaard
4ce0bf4d16
mysql: improved mysql data source, added test feature when adding data source, fixed cache issue
2017-05-11 10:50:24 +02:00
Daniel Lee
aee4af2148
api: omit unused fields for /api/datasources
...
Fixes #7822
2017-04-25 15:23:36 +02:00
Daniel Lee
193d468ed3
admin: adds paging to global user list
...
Currently there is a limit of 1000 users in the global
user list. This change introduces paging so that an
admin can see all users and not just the first 1000.
Adds a new route to the api - /api/users/search that
returns a list of users and a total count. It takes
two parameters perpage and page that enable paging.
Fixes #7469
2017-02-13 12:59:36 +01:00
huydx
143cbe921f
(feat) support datasource delete by name api
2017-02-10 23:30:14 +09:00