Commit Graph
41 Commits
Author SHA1 Message Date
Sofia Papagiannaki d46690ddc9 Devenv: Replace deprecated SQL Server docker image (#20352) 2019-11-13 16:36:52 +02:00
Sofia Papagiannaki 51a0e5fdf9 Chore: Update latest.json (#20216) 2019-11-06 21:17:42 +01:00
Sofia Papagiannaki 9525f318b8 Changelog: 6.4.4 release (#20201)
* Changelog: 6.4.4 release
2019-11-06 15:07:42 +02:00
Sofia Papagiannaki 19dbd27c5c mysql: fix encoding in connection string (#20192) 2019-11-06 10:54:53 +02:00
Sofia PapagiannakiandMarcus Efraimsson b52c2c9a54 Docs: Improve remote image renderer documentation (#20031)
* Add docker-compose example for running grafana with remote renderer

* Update docs/sources/administration/image_rendering.md

Co-Authored-By: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2019-10-31 16:01:01 +02:00
Sofia Papagiannaki 55248f9269 Add devenv block for apache proxy working for Mac (#20119) 2019-10-31 15:57:58 +02:00
fc08c26025 WIP: Spawn backend plugins v2 (#19835)
* WIP: Spawn backend plugins v2

* Add test for plugin version

* Fix support for SDK plugins

Co-authored-by: Kyle Brandt <kyle@kbrandt.com>
Co-authored-by: Marcus Olsson <olsson.e.marcus@gmail.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* WIP: Draft PR for fork of V2 sdk / bi-directional support (#19890)

* temporary use export-datasource-plugin branch of grafana-plugin-sdk

* fix failing test

* remove debug (spew) lines

* misc cleanup

* add expressions feature toggle

* use latest grafana-plugin-sdk-go
2019-10-24 17:15:27 +02:00
Sofia Papagiannaki 0196eca5ac Update Apache configuration to work with MPMs as shared modules (#19900) 2019-10-22 11:22:24 +02:00
Sofia Papagiannaki f1a63ecf24 Release: Update latest (#19866) 2019-10-16 19:12:21 +03:00
Sofia PapagiannakiandMarcus Efraimsson 5d9a45bbd5 Changelog: 6.4.3 release (#19862)
* Changelog: 6.4.3 release

Co-Authored-By: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2019-10-16 18:49:54 +03:00
Sofia Papagiannaki a62dea47b4 Login: Show SAML login button if SAML is enabled (#19591)
* Show SAML login button if SAML is enabled

Move logic inside LoginServiceButtons

* Prevent from rendering login-oauth div if no login service is enabled
2019-10-03 15:35:38 +02:00
Sofia Papagiannaki 9018050eca Release: update latest.json (#19312) 2019-09-23 16:43:22 +02:00
Sofia Papagiannaki 56f5106717 SQL: Rewrite statistics query (#19178)
* Rewrite statistics query
2019-09-19 14:15:26 +03: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
Sofia Papagiannaki bf40849a2c Add directions for more details provided when not anymore on issue triage (#19116) 2019-09-17 10:17:18 +03:00
Sofia PapagiannakiandMarcus Efraimsson 7f40dc5317 Image rendering: Add deprecation warning when PhantomJS is used for rendering images (#18933)
* Add deprecation warning

* Update pkg/services/rendering/rendering.go

Co-Authored-By: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2019-09-10 16:16:51 +03:00
Sofia Papagiannaki de075e529d Build: Fix potential case-insensitive import collision for github.com/Unknwon/com (#18915)
* update gopkg.in/macaron.v1

* update github.com/go-macaron/binding

* update github.com/go-macaron/session

* Substitute github.com/Unknwon/com with github.com/unknwon/com

* Clean up modules using `go mod tidy`

* Substitute github.com/Unknwon/bra with github.com/unknwon/bra
2019-09-09 14:22:06 +03:00
Sofia Papagiannaki 388d3d3714 Notification is sent when state changes from no_data to ok (#18920) 2019-09-05 18:54:27 +03:00
Sofia Papagiannaki 4e29357d15 Backend: Do not set SameSite cookie attribute if cookie_samesite is none (#18462)
* Do not set SameSite login_error cookie attribute if cookie_samesite is none

* Do not set SameSite grafana_session cookie attribute if cookie_samesite is none

* Update middleware tests
2019-08-09 09:10:08 +03:00
Sofia Papagiannaki 7520166f17 API: Minor fix for team creation endpoint when using API key (#18252)
* Fix CreateTeam api endpoint

No team member should be created for requests
authenticated by API tokens.

* Update middleware test

Assert that `isAnonymous` is set for `SignedInUser`
authenticated via API key.

* Add test for team creation

Assert that no team member is created if the signed in user
is anomymous.

* Revert "Fix CreateTeam api endpoint"

This reverts commit 9fcc4e67f5.

* Revert "Update middleware test"

This reverts commit 75f767e58d.

* Fix CreateTeam api endpoint

No team member should be created for requests
authenticated by API tokens.

* Update team test

* Change error to warning and update tests
2019-08-08 11:27:47 +03:00
Sofia Papagiannaki 63c3743de6 Update latest.json (#18417) 2019-08-06 17:12:45 +02:00
Sofia Papagiannaki 91c91c9668 Changelog 6.3.0 (#18414) 2019-08-06 16:30:37 +02:00
Sofia Papagiannaki 269c1fb107 Do not set SameSite for OAuth cookie if cookie_samesite is None (#18392) 2019-08-06 09:50:20 +03:00
Sofia Papagiannaki c9f7e3059f Fix failing end to end tests job for release (#18323)
Create and push the expected tag to grafana-dev repository
and use this instead for running the end to end tests
for the release.
2019-08-01 15:52:00 +02:00
Sofia Papagiannaki 69b7b8bb46 Fix OAuth error due to SameSite cookie policy (#18332)
The `oauth_state` cookie used to be created with the SameSite value set
according to the `cookie_samesite` configuration.
However, due to a Safari bug SameSite=None or SameSite=invalid are treated
as Strict which results in "missing saved state" OAuth login failures
because the cookie is not sent with the redirect requests to the OAuth
provider.
This commit always creates the `oauth_state` cookie with SameSite=Lax
to compensate for this.
2019-08-01 15:47:04 +02:00
Sofia Papagiannaki 13c41b781a Run End-to-End tests for release builds (#18211) 2019-07-25 11:32:28 +02:00
Sofia Papagiannaki 18d999f1bc Fix provision alerts generation script (#18145)
The script tries to delete previously existing alerts
but it used to fail if there were too many of them.
2019-07-17 09:49:33 +03:00
Sofia Papagiannaki 6aa58182c7 Add missing pull requests to Changelog (#18061) 2019-07-11 16:13:23 +03:00
Sofia Papagiannaki f2ad3242be API: Minor fix for nil pointer when trying to log error during creating new dashboard via the API (#18003)
* Minor fix for nil pointer when trying to log error

* Do not return error if a dashboard is created

Only log the failures

* Do not return error if the folder is created

Only log the failures
2019-07-11 09:45:29 +03:00
Sofia Papagiannaki a5834d3250 Update latest.json (#18043) 2019-07-10 20:24:17 +03:00
Sofia Papagiannaki f5efef1370 Update Changelog (#18042) 2019-07-10 19:42:23 +03:00
Sofia Papagiannaki 3bbc40a32f Chore: bump master version number to 6.4.0-pre 2019-07-10 16:12:28 +03:00
Sofia Papagiannaki 78ca55f3d7 Fix: Break redirect loop if oauth_auto_login = true and OAuth login fails (#17974)
* Add tests for login view

* Fix OAuth auto login redirect loop

login_error cookie is only set when the OAuth login fails
for some reason. Therefore, the login view should return
immediately if a login_error cookie exists before trying
to login the user using OAuth again.

* Fix test

Use 'index-template' instead of 'index' for testing

* Add some comments
2019-07-09 09:37:24 +03:00
Sofia Papagiannaki 2ae6adef26 Codestyle: add guidelines for removing the m alias for models (#17890)
* Add guidelines for avoiding use of m alias for models

* Add suggestion for elimination of existing aliases
2019-07-03 11:36:01 +03:00
Sofia Papagiannaki f3f03ceb6a Auth Proxy: Respect auto_sign_up setting (#17843)
* Add test for disabled auth proxy auto signup option

* Set correctly auth proxy auto signup
2019-07-01 14:29:41 +03:00
Sofia Papagiannaki d9fea07e6e Graphite: use POST for /metrics/find requests (#17814)
* Add test that expects a POST request

* Change graphite /metric/find request to POST

Query parameter can become large enough
to exceed GET URI limits.

* Fix requests with time range

Initialise httpOptions.params

* Fix for supporting queries referencing template variable
2019-06-28 16:21:32 +03:00
Sofia Papagiannaki 6fb36e705f ApiKeys: Fix check for UTC timezone (#17776)
getTimeZone() no longer returns an object, but a string
2019-06-26 10:26:16 +02:00
Sofia Papagiannaki dc9ec7dc91 Auth: Allow expiration of API keys (#17678)
* Modify backend to allow expiration of API Keys

* Add middleware test for expired api keys

* Modify frontend to enable expiration of API Keys

* Fix frontend tests

* Fix migration and add index for `expires` field

* Add api key tests for database access

* Substitude time.Now() by a mock for test usage

* Front-end modifications

* Change input label to `Time to live`
* Change input behavior to comply with the other similar
* Add tooltip

* Modify AddApiKey api call response

Expiration should be *time.Time instead of string

* Present expiration date in the selected timezone

* Use kbn for transforming intervals to seconds

* Use `assert` library for tests

* Frontend fixes

Add checks for empty/undefined/null values

* Change expires column from datetime to integer

* Restrict api key duration input

It should be interval not number

* AddApiKey must complain if SecondsToLive is negative

* Declare ErrInvalidApiKeyExpiration

* Move configuration to auth section

* Update docs

* Eliminate alias for models in modified files

* Omit expiration from api response if empty

* Eliminate Goconvey from test file

* Fix test

Do not sleep, use mocked timeNow() instead

* Remove index for expires from api_key table

The index should be anyway on both org_id and expires fields.
However this commit eliminates completely the index for now
since not many rows are expected to be in this table.

* Use getTimeZone function

* Minor change in api key listing

The frontend should display a message instead of empty string
if the key does not expire.
2019-06-26 09:47:03 +03:00
Sofia Papagiannaki e7e9d3619e Add guidelines for SQL date comparisons (#17732) 2019-06-24 20:39:28 +03:00
Sofia Papagiannaki d0852f0618 Fix link in pkg/README (#17714)
Remove leading backslash from url
2019-06-24 10:34:51 +03:00
Sofia Papagiannaki 7b70e7db2d AuthProxy: Optimistic lock pattern for remote cache Set (#17485)
* Implementation of optimistic lock pattern

Try to insert the remote cache key and handle integrity error

* Remove transaction

Integrity error inside a transaction results in deadlock

* Remove check for existing remote cache key

Is no longer needed since integrity constrain violations are handled

* Add check for integrity constrain violation

Do not update the row if the insert statement fails
for other than an integrity constrain violation

* Handle failing inserts because of deadlocks

If the insert statement fails because of a deadlock
try to update the row

* Add utility function for returning SQL error code

Useful for debugging

* Add logging for failing expired cache key deletion

Do not shallow it completely

* Revert "Add utility function for returning SQL error code"

This reverts commit 8e0b82c79633e7d8bc350823cbbab2ac7a58c0a5.

* Better log for failing deletion of expired cache key

* Add some comments

* Remove check for existing cache key

Attempt to insert the key without checking if it's already there
and handle the error situations

* Do not propagate deadlocks created during update

Most probably somebody else is trying to insert/update
the key at the same time so it is safe enough to ignore it
2019-06-13 15:36:09 +02:00