Commit Graph
100 Commits
Author SHA1 Message Date
Sofia Papagiannaki cd27562c76 Access control: Modify dashboard/folder resolvers so that return also the inherited scopes (#62025)
* Access Control: Add folder service dependency to the dashboard/folder resolvers

* Expose the function fetching parents to folder interface

* Add generic prepend utility

* Modify dashboard resolvers to return inherited scopes
2023-01-26 10:21:10 +02:00
Sofia Papagiannaki e5e8bb4dea Chore: Use same JSON tag casing everywhere for parent UID (#61935)
Chore: Use same JSON tag casing everywhere for parent UID
2023-01-24 10:20:28 +02:00
Sofia Papagiannaki c7a7ebd3e0 Chore: Drop search service dependency from folder service (#61789)
* Chore: Drop search service dependency from folder service
2023-01-23 14:09:09 +02:00
Sofia Papagiannaki c104cc7020 Chore: Split folder store and dashboard store interfaces (#61655)
* update folder store mock

* Split folder store and dashboard store interfaces
2023-01-19 18:38:07 +02:00
Sofia Papagiannaki 4b634fadcf Chore: Fix Swagger and OpenAPI specifications (#61669)
* Add go-swagger annotations for route

* Re-generate Swagger and OpenAPI specs
2023-01-18 17:49:07 +02:00
Sofia Papagiannaki b80c9bb974 Chore: Drop dashboard service dependency from folder service (#61614)
* Chore: Drop dashboard dependency from folder service
2023-01-18 17:47:59 +02:00
Sofia Papagiannaki f25d5199c5 Chore: Fix folder service tests (#61659)
* Chore: Fix folder service tests
2023-01-18 12:22:23 +02:00
Sofia Papagiannaki e2ed42c2a3 Nested folders: Do not expose the sequential ID from the folder store (#60702)
* Nested folders: Do not expose the sequential ID from the folder store
2023-01-06 16:04:17 +02:00
Sofia Papagiannaki 4df78cebc2 Nested Folders: Unify folder services (#60390)
* Nested Folders: Unify folder services
2022-12-20 17:38:09 +02:00
Sofia Papagiannaki 55b014974d Nested folders: Refactor folder update (#60323)
* Nested folders: Refactor folder update

* Apply suggestions from code review
2022-12-20 15:00:33 +02:00
Sofia Papagiannaki b1ef5ab320 Nested Folders: Support listing nested folder children (#58566)
* Nested Folders: Support listing nested folder children

* Filter out subfolders with no permissions

* Apply suggestion from code review
2022-12-19 10:52:04 +02:00
Sofia Papagiannaki 11d8bcbea9 Guardian: Introduce additional constructors (#59577)
* Guardian: Use dashboard UID instead of ID

* Apply suggestions from code review

Introduce several guardian constructors and each time use
the most appropriate one.
2022-12-15 16:34:17 +02:00
Sofia Papagiannaki efd827fd65 Chore: Trigger backend lint on bingo updates (#60380)
Chore: Trigger backend lind on bingo updates
2022-12-15 06:48:00 -05:00
Sofia Papagiannaki 341d7b01ee Login: Fix failure to login a new user via an external provider if quota are enabled (#60015)
* Login: Fix failure to login a new user via an external provider if quota are enabled
2022-12-09 12:30:27 +01:00
Sofia Papagiannaki e7b25baf46 Chore: Fix failing feature toggle test (#60030) 2022-12-08 16:24:01 +02:00
Sofia Papagiannaki 4259b6bf58 API: Fix delete user failure due to quota not enabled (#59875) 2022-12-06 15:02:01 +02:00
Sofia Papagiannaki 798a8ceb9c Nested folders: Fix delete (#59627)
* Fix deleting subfolder

It used to fail with beause of missing signed in user

* Add logging

* fixup

* Fail request if deleting nested folder has failed

Before we only used to log the error

* Fix failing test

During failed nested folder creation
call the dashboard store deletion instead of the service one.
2022-12-01 05:27:40 -05:00
Sofia Papagiannaki 933879a347 Chore: Delete accidentally committed test database (#59238) 2022-11-29 10:33:43 +02:00
Sofia Papagiannaki 8ab7ca45cd Nested folder: Fix for PostgreSQL (#59405)
* Nested Folders: Fix PostgreSQL LastInsertId failure

* Fix children sorting

* Fix store tests
2022-11-28 17:48:44 +02:00
Sofia Papagiannaki f5c41ea497 Nested Folders: More API fixes (#59316)
* Nested Folder: Fix create, use camel case for JSON properties

* Fix get parents if the folder does not exist

* Add store test for get parents
2022-11-24 13:28:53 -05:00
Sofia Papagiannaki 8e6d343981 Nested Folders: Some API fixes (#59298)
* Nested Folders: Fix API responses

* Fix panic during deletions

* Add test
2022-11-24 08:59:47 -05:00
Sofia Papagiannaki f3da48bd50 SQLStore: Refactor query retries to use exponential backoff (#58559) 2022-11-24 13:12:50 +02:00
Sofia Papagiannaki ad96b240fc Nested Folder: Enforce maximum nested folder depth (#59213)
* Nested Folder: Enforce maximum nested folder depth

* Cleanup

* Fix logging
2022-11-23 09:44:45 -05:00
Sofia Papagiannaki 0af96936be Nested Folders: Do not refer to the configuration for checking for the flag (#59197)
* Nested Folders: Do not refer to the configuration for checking for the flag

Use always features.IsEnabled() instead

* Depend on the interface instead
2022-11-23 06:16:00 -05:00
Sofia Papagiannaki 02b6b09121 Nested Folders: Set user in the API level (#59148) 2022-11-23 11:13:47 +02:00
Sofia Papagiannaki 9926931d40 Nested Folder: Include URL into the GET response (#59099) 2022-11-22 07:04:09 -05:00
Sofia Papagiannaki 15561b83e4 Nested Folders: Make parent_uid column nullable (#59035)
Nested Folders: Make parent UID column nullable
2022-11-21 15:24:20 +01:00
Sofia Papagiannaki 18738cfd77 Quota: Fix failure in store due to missing scope parameters (#58874)
Quota: Fix failure in store
2022-11-17 18:08:25 +01:00
Sofia Papagiannaki ab36252c86 Quota: Fix failure when checking session limits (#58865) 2022-11-17 00:30:27 +01:00
Sofia Papagiannaki 93b4b9154e Chore: Restore folder properties (#58743)
* Chore: Fix folder URL

* Restore more folder properties

* Fixup
2022-11-15 12:58:12 +02:00
Sofia Papagiannaki 9855e74b92 Chore: Refactor quota service (#58643)
Chore: Refactor quota service (#57586)

* Chore: refactore quota service

* Apply suggestions from code review
2022-11-14 21:08:10 +02:00
bf5a08e039 API: Support creating a nested folder (#58508)
* API: Support nested folder creation

* Update swagger

* fixup

* Update pkg/api/dtos/folder.go

Co-authored-by: Serge Zaitsev <serge.zaitsev@grafana.com>

* Fix some tests

* create legacy folder url from title and uid

Co-authored-by: idafurjes <36131195+idafurjes@users.noreply.github.com>
Co-authored-by: Serge Zaitsev <serge.zaitsev@grafana.com>
Co-authored-by: Ida Furjesova <ida.furjesova@grafana.com>
2022-11-10 04:41:03 -05:00
Sofia Papagiannaki 000b4f878d Chore: Retry queries by default in tests (#58535) 2022-11-09 19:56:47 +02:00
Sofia Papagiannaki 4d2be7a277 Nested Folders: Use recursive query if the driver supports it (#58178)
* Nested Folders: Try first recursive query and fallback if it's not supported

* Apply suggestion from code review

Fix error msgID
2022-11-08 14:53:05 -05:00
Sofia Papagiannaki 96cdf77995 Revert "Chore: Refactor quota service (#57586)" (#58394)
This reverts commit 326ea86a57.
2022-11-08 11:52:07 +02:00
Sofia Papagiannaki 326ea86a57 Chore: Refactor quota service (#57586)
* Chore: refactore quota service

* Apply suggestions from code review
2022-11-08 10:25:34 +02:00
Sofia Papagiannaki d131733f55 Nested Folder: Modify store Update() (#58183)
* Nested Folder: Modify store Update()

* fixup
2022-11-04 10:04:24 +01:00
Sofia Papagiannaki 5c973e58bd Nested Folders: Add tests for store methods (#57662)
* Nested Folders: Add store tests

* Fix parent order

* Fix update

* skip tests!

* Export test helpers for now
2022-11-03 14:21:41 +01:00
Sofia Papagiannaki 40a59c2793 Chore: Update developer guide for running integration tests (#57758) 2022-10-27 17:18:20 +03:00
Sofia PapagiannakiandChristopher Moyer 46fb4081ba SQLStore: Optionally retry queries if sqlite returns database is locked (#56096)
* SQLStore: Retry queries if sqlite returns database is locked

* Configurable retries

* Apply suggestions from code review

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2022-10-17 21:23:44 +03:00
Sofia Papagiannaki 97730aec10 Chore: Bump golang.org/x/text (#56841) 2022-10-13 11:26:25 +03:00
Sofia Papagiannaki 7e24e19230 Swagger: Remove license (#56716) 2022-10-11 17:06:36 +03:00
Sofia Papagiannaki 4cdbfb7606 Chore: Timeout integration package tests faster (#56287) 2022-10-10 09:27:04 +02:00
Sofia Papagiannaki bba6eb1f2d Chore: update latest.json to 9.1.7 (#56315) 2022-10-04 19:32:13 +03:00
Sofia Papagiannaki 91b4ce08a9 Update github.com/labstack/echo/v4 (#56226) 2022-10-04 14:31:05 +03:00
Sofia Papagiannaki 6099e55e62 SQLStore: Remove call to deleted store.NewSession() (#56025) 2022-09-29 10:17:33 -04:00
Sofia Papagiannaki 8b77ee2734 SQLStore: Ensure that sessions are always closed (#55864)
* SQLStore: Ensure that sessions are always closed

Delete `NewSession()` in favour of `WithDbSession()`

* Add WithDbSessionForceNewSession to the interface

* Apply suggestions from code review
2022-09-29 15:55:47 +03:00
Sofia Papagiannaki b749cef78e Chore: Remove unnecessary transaction (#55819) 2022-09-28 18:50:19 +03:00
Sofia Papagiannaki d0e7765c6a Annotation: Optionally allow storing longer annotation tags (#54754)
* Annotation: Optionally allow longer annotation tags

* Do not accept configuration lower than today's default (500)

* Apply suggestion from code review
2022-09-23 06:04:41 -04:00
Sofia Papagiannaki 2f14575dd3 Chore: Move annotations cleanup to the annotations service (#55618) 2022-09-22 15:27:48 +03:00
Sofia Papagiannaki 55ef34bee4 Instrumentation: Add api/health to the unnamed handlers (#55478) 2022-09-22 13:03:20 +03:00
Sofia Papagiannaki 754eea20b3 Chore: SQL store split for annotations (#55089)
* Chore: SQL store split for annotations

* Apply suggestion from code review
2022-09-19 10:54:37 +03:00
Sofia Papagiannaki b157fcdd87 Chore: fix formating for swagger definitions (#54993) 2022-09-12 10:40:35 +03:00
Sofia Papagiannaki e57fd88644 Swagger: restore missing enterprise endpoints (#54765) 2022-09-06 16:26:55 +03:00
Sofia Papagiannaki 950715b255 API: Do not expose user input in datasource error responses (#53483) 2022-09-05 16:10:45 +03:00
Sofia Papagiannaki ae101bf935 Alerting: Fix migration (#53253) 2022-08-03 11:41:18 -04:00
Sofia Papagiannaki 5fec6cc4f5 API: Fix snapshot responses (#52998)
* API: Fix response status when snapshots are not found

* API: Fix response status when snapshot key is empty

* Apply suggestions from code review
2022-08-03 10:31:23 -04:00
Sofia Papagiannaki 3713a193d8 Chore: Fix Makefile target dependency (#53165) 2022-08-02 19:42:48 +03:00
Sofia Papagiannaki 3f58e8ec2a Chore: Cleanup Makefile (#53037)
Remove redundant reference to deleted folder pkg/api/docs/definitions
2022-08-01 16:31:49 +03:00
Sofia Papagiannaki 87004cc22d API: Do not expose user input in datasource error responses (#52992) 2022-07-29 08:46:51 -04:00
Sofia Papagiannaki 7ba076de10 Chore: Move swagger definitions to the handlers (#52643) 2022-07-27 09:54:37 -04:00
Sofia Papagiannaki f7c5eceb21 Chore: Update to the latest grafana-plugin-sdk-go and more swagger fixes (#52445)
* Fix get legacy alert response

* Swagger: Fix get folder by UID response

* Fix conflicting swagger model Alert

Reanme legacy alerting swagger model to LegacyAlert to differentiate it
from the prometheus Alert

* Bump grafana-plugin-sdk-go

* Fix get folder response

* Use go-swagger command for merging the specifications and remove merge_specs script
2022-07-20 16:09:42 +03:00
Sofia Papagiannaki e6b9ded949 API: Add service account routes to the swagger (#52398)
* API: Add service account routes to the swagger
2022-07-19 12:52:51 +03:00
Sofia Papagiannaki fb379ae436 Chore: Introduce playlist service (#52252)
* Store: Introduce playlist service

* Integrate playlist service

* Update swagger
2022-07-18 05:26:35 -04:00
Sofia Papagiannaki 4ff0f006dd SQLstore: Fix fetching an inexistent playlist response (#51962)
* SQLstore: Fix fetching and deleting an inexistent playlist

xorm's session.Get() does not return an error if the raw does not exist.
It returns a boolean instead.
The playlist `sqlstore.GetPlaylist()` used to check only the error and in case
of inexistent UID didn't return an error.
2022-07-13 13:00:03 +03:00
Sofia Papagiannaki 21632817c5 Alerting: Fix invalid swagger specification (#51907)
* Alerting: Fix invalid swagger specification

* Add make targets for validating the generated swagger spec
2022-07-13 12:34:54 +03:00
Sofia PapagiannakiandIda Furjesova b3992df988 API: Do not validate/save legacy alerts when saving a dashboard if legacy alerting is disabled (#51883)
* API: Do not validate/save legacy alerts if legacy alerting is disabled

Co-authored-by: Ida Furjesova <ida.furjesova@grafana.com>
2022-07-13 12:33:28 +03:00
Sofia Papagiannaki 42f69a5e63 API: Add playlists endpoints to the swagger spec (#51918) 2022-07-11 17:12:22 +03:00
Sofia Papagiannaki a5924315f8 API: Fix failure to generate swagger specification due to missing binary (#51551)
* Fix swagger generation

Add installing binary as dependency to the target

* Some more fixes
2022-06-30 09:58:07 +03:00
Sofia Papagiannaki 1399ab50b3 API: Universal swagger generation (#51033) 2022-06-27 10:54:31 +03:00
Sofia PapagiannakiandEmil Tullstedt 84e2e1ec8e Log: Fix text logging for unsupported types (#51306)
* Fix text log for unsupported types

* Apply suggestions from code review

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2022-06-23 13:24:26 +02:00
Sofia Papagiannaki 7418a80264 API: Make Swagger specification more consistent (#50576)
* Fix swagger generation targer using mac

Validate using the swagger binarry instead of the docker container

* API: Make swagger specification more consistent

Fix operation parameter ordering
2022-06-14 12:35:22 +02:00
Sofia Papagiannaki a165b40e56 API: Fix swagger generation (#50071)
* API: Fix Swagger generation using docker

* Unset SWAGGER_GENERATE_EXTENSION for Mac
2022-06-03 13:31:14 +03:00
Sofia Papagiannaki 6112bd0c63 API: Fix swagger specification (#50034)
* API: Fix swagger specification

* Validate specification after generation
2022-06-02 10:49:52 +03:00
Sofia Papagiannaki 7cf321d7bd Alerting: Fix swagger specification (#49273)
* Alerting: fix specification

* Update merged swagger specification
2022-05-26 14:43:59 +03:00
Sofia Papagiannaki 060af782df Docs: Add deprecation notices for datasource endpoints (#49411)
* Update markdown

* Update swagger
2022-05-23 16:11:47 +02:00
Sofia PapagiannakiandSelene be0d043673 API: Add endpoint for updating a data source by its UID (#49396)
* API: Add endpoint for updating a data source by UID

* Update docs markdown

* Update swagger

* Apply suggestions from code review

Co-authored-by: Selene <selenepinillos@gmail.com>
2022-05-23 15:13:13 +02:00
Sofia Papagiannaki 6bb843bd0e API: Introduce health and resources data source endpoints using the data source UID (#48676)
* API: introduce health and resources datasource endpoints with UID

* Document endpoints

* Update swagger
2022-05-19 19:27:59 +03:00
Sofia Papagiannaki 925784f514 Alerting: Modify endpoint for testing a datasource rule using the UID (#48070)
* Modify testing endpoint to expect the datasource UID

* Update docs
2022-05-17 14:10:20 +03:00
Sofia Papagiannaki bb66c03f9a Alerting: modify prometheus endpoints for proxying using the datasource UID (#48052)
* Modify prometheus endpoints to expect the data source UID

* Update frontend
2022-05-06 15:05:02 -04:00
Sofia Papagiannaki 610247d52a Alerting: modify ruler endpoints for proxying using the datasource UID (#48046)
* Modify ruler endpoints to expect the data source UID

* Update frontend

* Apply suggestion from code review
2022-05-05 14:58:32 +03:00
Sofia Papagiannaki 3e752a0db1 Alerting: modify alertmanager endpoints for proxying using the datasource UID (#47978)
* Alerting: enable proxying alertmanager calls using the datasource UID

* Remove use of datasource ID from the API

* Update frontend
2022-04-29 10:25:22 +03:00
Sofia Papagiannaki 54962c2f0c Alerting: Rename Recipient path parameter to DatasourceID (#47949) 2022-04-20 16:20:17 +03:00
Sofia Papagiannaki e58a015baf Swagger: annotate RoleType as enumeration (#47902) 2022-04-20 10:27:25 +03:00
Sofia Papagiannaki f263cad8ab Devenv: fix alert_webhook_listener (#44820) 2022-04-15 13:32:20 +02:00
Sofia Papagiannaki c8189e4808 API: enable proxying datasource calls using the datasource UID (#47634)
* Introduce additional routes
2022-04-14 13:28:13 +03:00
Sofia Papagiannaki 2478785aaf Release engineering squad owns pkg/build (#47546) 2022-04-11 10:28:40 +02:00
Sofia Papagiannaki 3cfbbbdbf2 Skip flaky test (#45785) 2022-02-23 16:56:21 +01:00
Sofia Papagiannaki 5a1d8cbea7 Search: fix PostgreSQL query (#45305)
* Search: fix PostgreSQL query

* Apply suggestion from code review
2022-02-23 04:36:37 -08:00
Sofia Papagiannaki 17dee4700c SQLStore: Fix migrator locking test for SQLite (#45523)
* SQLStore: Fix migrator locking test for SQLite
2022-02-17 16:12:44 +02:00
Sofia Papagiannaki 6a38ce2307 Resolve depedency cycle (#45427) 2022-02-16 10:59:34 +02:00
d718ee1918 SQLStore: Prevent concurrent migrations (#44101)
* SQLStore: Prevent concurrent migrations

* Hide behind a feature toggle

* Configurable locking attempt timeout

* Update docs/sources/administration/configuration.md

Co-authored-by: Igor Suleymanov <radiohead@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2022-02-15 18:54:27 +02:00
Sofia Papagiannaki 2983082eb3 API: Fix missing enterprise routes in swagger spec (#45152) 2022-02-09 15:31:43 +01:00
35fe58de37 API: Extract OpenAPI specification from source code using go-swagger (#40528)
* API: Using go-swagger for extracting OpenAPI specification from source code

* Merge Grafana Alerting spec

* Include enterprise endpoints (if enabled)

* Serve SwaggerUI under feature flag

* Fix building dev docker images

* Configure swaggerUI

* Add missing json tags

Co-authored-by: Ying WANG <ying.wang@grafana.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2022-02-08 13:38:43 +01:00
Sofia Papagiannaki 4ca8529b76 Devenv: fix permission failures for mysql_tests and postgres_tests docker blocks (#44203) 2022-01-28 11:39:28 +02:00
Sofia Papagiannaki 963ae4ef87 API: Fix storing dashboard with static UID (#43861)
* API: Fix storing dashboard with static UID
2022-01-11 18:39:53 +02:00
Sofia Papagiannaki e25613a360 Update CODEOWNERS for SQL data sources (#43456) 2022-01-10 10:03:44 +01:00
Sofia Papagiannaki c4aaf5f9d1 API: prevent provisioned dashboard from being updated (#41894) 2021-12-17 10:31:52 -05:00
Sofia Papagiannaki c6483cd8ed Alerting: Refactor API handlers to use web.Bind (#42600)
* Alerting: Refactor API handlers to use web.Bind

* lint
2021-12-13 09:22:57 +01:00
Sofia Papagiannaki 9c7b52fd36 Alerting: Fix API specification (#42282)
* Alerting: Fix API specification
2021-11-30 20:55:54 +01:00