Compare commits

...

1109 Commits

Author SHA1 Message Date
Dimitris Sotirakis 5f16e4cedc Rename build-e2e-publish pipelines (#44836) 2022-02-03 14:23:50 +00:00
Gábor Farkas 0c2ba819a7 Loki: use generic grafana null-insertion mechanism (#44826)
* loki: refactor: return dataframes instead of timeseries

* fixed unit test

* removed unused import
2022-02-03 15:23:38 +01:00
Grot (@grafanabot) afac7701cb ReleaseNotes: Updated changelog and release notes for 8.4.0-beta1 (#44822) 2022-02-03 15:15:48 +01:00
Armand Grillet a943bf9963 Improve prettier:check output (#44816) 2022-02-03 15:13:14 +01:00
Giordano Ricci 6415b9a54d Explore: avoid locking timepicker when range is inverted (#44790)
* Explore: avoid locking timepicker when range is inverted

* Explore: prevent time picker to lock if from & to search parameters are present
2022-02-03 13:45:29 +00:00
Konrad Lalik bb88cf683c Alerting: Fix alert notification template (#44761)
* Wrap the inner template into div to prevent premailer from breaking the HTML structure

* Remove test row

* Add wrapper explanation

* Remove redundant code

* Add empty line
2022-02-03 14:17:05 +01:00
Todd Treece c8bb4c733e Prometheus: Set interval on time field (#44802) 2022-02-03 08:15:55 -05:00
Gilles De Mey 29b97361f7 Alerting: load correct unified alerting tab (#44794) 2022-02-03 13:35:56 +01:00
Serge Zaitsev 43b15b92ad Chore: Remove bus from the alerting service (#44496)
* propagate notificationservice down to the notifiers

* replace dispatch in result handler

* remove dispatch from the rule reader

* remove dispatch from eval context

* remove dispatch from alerting usage

* remove dispatch from alerting usage

* remove dispatch from notifier

* attempt to fix tests in alerting

* hello linter, my old friend; also disable some tests for now

* use mocks to fix the tests

* resolving wire providers

* make linter happy

* remove yet another bus.dispatch

* fix tests using store mock
2022-02-03 13:26:05 +01:00
Alex Khomenko a79c048344 Feature Highlights: move setting to a feature toggle (#44780)
* Add toggle

* Use the toggle

* Cleanup
2022-02-03 13:53:23 +02:00
Ivana Huckova c23bc1e7b7 Prometheus: Show variable options in query builder (#44784)
* Prometheus: Show variable options

* Remove lint error

* Fix test for CodeQL

* Update public/app/plugins/datasource/prometheus/datasource.ts

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>

* Update public/app/plugins/datasource/loki/datasource.ts

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2022-02-03 11:40:19 +01:00
Kat Yang f582e6c86a Chore: Remove bus from password (#44482)
* Chore: Remove bus from password

* Refactor: Remove bus from password.go and adjust tests

* remove sqlstore dependency from notifications

* Chore: Remove bus from password

* Refactor: Remove bus from password.go and adjust tests

* remove sqlstore dependency (again)

* remove fmt printf

* fix dependencies in http server

* fix renamed method in tests

Co-authored-by: Serge Zaitsev <serge.zaitsev@grafana.com>
2022-02-03 10:33:46 +01:00
Gábor Farkas f36ed878e9 Loki: add helper function to handle instant/range queries (#44785)
* loki: add helper function to handle range/instant queries

* improved comment

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2022-02-03 10:25:37 +01:00
Peter Holmberg 3314178a0a grafana/ui: Fix RelativeTimeRange supported formats (#44535)
* remove link to docs site

* extract tooltip to component

* text and formatting

* use div instead of p
2022-02-03 10:13:19 +01:00
Vardan Torosyan f38f10416a Revert fixed roles and service accounts (#44778)
* Revert fixed roles and service accounts

* Leave the fixed role for service accounts
2022-02-03 09:59:26 +01:00
Armand Grillet 8c6a5f043a [docs] Clarify legacy alerting deprecation (#44759)
* Clarify legacy alerting deprecation

* Lint Markdown
2022-02-03 09:59:02 +01:00
idafurjes 1b286e6bb5 Remove bus from quota, preferences, plugins, user_token (#44762)
* Remove bus from quota, preferences, plugins, user_token

* Bind sqlstore.Store to *sqlstore.SQLStore

* Fix test

* Fix sqlstore wire injection, dependency
2022-02-03 09:20:20 +01:00
Joan López de la Franca Beltran b2655750e8 Encryption: Add support for data keys re-encryption (#43548)
* Encryption: Add support for data keys re-encryption

* Add tests for data keys re-encryption

* Update code after refactorings

Co-authored-by: Leonard Gram <leo@xlson.com>
2022-02-03 09:15:38 +01:00
JM 16f0c6617a Update docs library element http api (#44493) 2022-02-03 08:46:03 +01:00
Joan López de la Franca Beltran f8105efff3 Encryption: CLI rollback command (#43935)
* Encryption: CLI rollback command

* Update flag reference to 'featuremgmt' pkg

* Update feature toggles usage

* Clean up data keys table after envelope encryption rollback
2022-02-03 07:19:18 +01:00
Josh Hunt ce4d8646fd Chore: E2E tests for various variables types (#44747)
* Pass data-testid into VariableTextEditorField

* Add e2e tests for custom variables

* Rename query variable specs to match others

* Add e2e tests for Text Box variables

* manually remove id: null

* Add tests for constant variables
2022-02-03 09:58:56 +11:00
Yuriy Tseretyan 984c95de63 Do not store EvaluationString in Evaluation. (#44606)
* do not store evaluation string in Evaluation.
* reduce number of buckets to store for a single state
2022-02-02 19:18:20 +01:00
Marcus Efraimsson 0092d10764 Instrumentation: Fix HTTP request instrumentation of authentication failures (#44234)
Moves the request tracing middleware earlier in the chain, just after the tracing middleware 
and before the log middleware. With these changes we'll be able to track 
authentication/authorization status failures that currently exits early and don't execute the 
request tracing middleware. In addition, there might be some other routes now being tracked 
with this that we didn't do before.

Fixes #39590
2022-02-02 18:48:46 +01:00
Leon Sorokin 3504844ad7 DataFrame: insert null values along interval (#44622) 2022-02-02 10:25:49 -06:00
Andres Martinez Gotor 0ab7097abc Chore: Update what's new link (#44782) 2022-02-02 16:43:37 +01:00
Eric Leijonmarck 1dd2579528 fix: remove migrated, and /org endpoint (#44788)
* fix: remove migrated, and /org endpoint

* Update pkg/api/index.go
2022-02-02 16:32:37 +01:00
kay delaney 9e6b9215ab SectionHeader: Fix "Go to Folder" link not working (#44593) 2022-02-02 16:27:55 +01:00
Ieva 9247848a7b increment fixed role version (#44779) 2022-02-02 15:24:16 +00:00
Kyle Brandt 040ce40113 SSE: Mode to drop NaN/Inf/Null in Reduction operations (#43583)
Co-authored-by: Yuriy Tseretyan <yuriy.tseretyan@grafana.com>
Co-authored-by: gillesdemey <gilles.de.mey@gmail.com>
2022-02-02 14:50:44 +01:00
Ashley Harrison 0cb3037b55 Panel: Embed URL is now correctly generated for a panel in the home dashboard (#44706)
* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* test tidyup

* Add comment for route

Co-authored-by: kay delaney <kay@grafana.com>
Co-authored-by: Alexandra Vargas <alexa1866@gmail.com>
Co-authored-by: joshhunt <josh@trtr.co>
Co-authored-by: Muaaz Saleem <muaazsaleem@Muaazs-MacBook-Pro.local>
2022-02-02 13:38:23 +00:00
George Robinson 924deda589 Fix Discord Webhook URL for invalid template (#44763)
This commit fixes an issue where an invalid template for Discord would change the Webhook URL to "" and cause "unsupported protocol scheme" errors.
2022-02-02 14:28:41 +01:00
Julien Pivotto b78082f426 doc: snapshots: fix JSON response (#44758) 2022-02-02 14:03:14 +01:00
Tania B 84ea13bf6c Docs: Refactor encryption docs (#44718)
* Docs: Refactor encryption docs

* Rename enterprise encr

* Remove envelope encr page

* combine database encryption sections

* fix reference

* Fix link

Co-authored-by: Mitchel Seaman <mitchel.seaman@gmail.com>
2022-02-02 15:02:57 +02:00
Tania B 07d207a3f0 Docs: Add documentation for the new encryption providers (#44604)
* Add docs for Google Cloud KMS provider

* Minor changes to Google KMS provider

* Add docs for Hashicorp Vault provider

* Review suggestion

Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>

* Commit suggested change

Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>

* Remove confusing instruction

* Add example of key file path

* Add links to new providers

* Add path description

Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>
2022-02-02 14:24:56 +02:00
renovate[bot] d87cd6f26c Update dependency prettier to v2.5.1 (#43473)
* Update dependency prettier to v2.5.1

* prettier fixes

* chore(toolkit): bump prettier to 2.5.1

* style(eslint): bump grafana config to 2.5.2 in core and toolkit

* style(mssql-datasource): fix no-inferrable-types eslint errors

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2022-02-02 12:02:32 +00:00
Joan López de la Franca Beltran 3b4e812449 Encryption: Keep legacy default provider id on providers map (#44721)
* Encryption: Keep legacy default provider id on providers map

* Minor fixes

* Refactor
2022-02-02 12:10:46 +01:00
Dimitris Sotirakis 7bb5a5b318 CI: Make e2e tests depend on binary builds (#44647)
* Make e2e test depend on binary builds

* Search for binary in the correct folders

* Remove package file var

* Add ARCH var
2022-02-02 12:40:22 +02:00
Oscar Kilhed 78ed5a99e6 TimeSeries/Barchart: Only show default label for y axis (#44713)
* TimeSeries/Barchart: only show default label for x axis

* Update docs

* Update packages/grafana-ui/src/options/builder/axis.tsx

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2022-02-02 11:05:48 +01:00
Konrad Lalik 69e4796504 Alerting: Split legacy and unified routing configuration (#44641)
* Disable add alert menu entry for legacy alerting

* Split legacy and unified routing configuration

* Fix fallback routes configuration
2022-02-02 10:57:43 +01:00
Giordano Ricci cff7336510 Logs Panel: fix timestamp parsing for string dates without timezone (#44664) 2022-02-02 09:54:33 +00:00
Artur Wierzbicki 46a34451d5 Analytics: add more properties to dashboard list viewed event (#44739) 2022-02-02 13:41:10 +04:00
JM 925333bfa4 Library Elements API GET by name returns array (#44743)
* Library Elements API GET by name returns array

Making a GET request to the Library Elements HTTP API `api/library-elements/name/:name` will return an **array** of Library Element objects, but the documentation says it will return a Library Element object.

Example cURL POST request:
`curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer XXXXXXXXXXX" -d @request.json "https://my.grafana.net/api/library-elements/"`

request.json
```json
{
  "model": {},
  "kind": 1,
  "name": "testing description3",
  "uid": "basic3",
  "id": 12345,
  "version": 2
}
```

Example cURL GET request:
`curl -X GET -H "Content-Type: application/json" -H "Authorization: Bearer XXXXXXXX" -d @request "https://my/api/library-elements/name/testing description3"`

Example response:
```json
{
    "result": [
        {
            . . .
        }
    ]
}
```

* Library Elements API fix bracket spacing
2022-02-02 09:50:27 +01:00
Ryan McKinley ac90c8d68d Geomap: initialization fixes (#44745) 2022-02-01 22:08:07 -08:00
Ryan McKinley d8df08ce5d Geomap: clear features when no-data is returned (#44748) 2022-02-01 22:02:43 -08:00
Sarah Zinger 58a71c7e91 Cloudwatch: Add syntax highlighting and autocomplete for "Metric Search" (#43985)
* Create a "monarch" folder with everything you need to do syntax highlighting and autocompletion.

* Use this new monarch folder with existing cloudwatch sql.

* Add metric math syntax highlighting and autocomplete.

* Make autocomplete "smarter":
- search always inserts a string as first arg
- strings can't contain predefined functions
- operators follow the last closing )

* Add some tests for Metric Math's CompletionItemProvider.

* Fixes After CR:
- refactor CompletionItemProvider, so that it only requires args that are dynamic or outside of it's responsibility
- Update and add tests with mocked monaco
- Add more autocomplete suggestions for SEARCH expression functions
- sort keywords and give different priority from function to make more visually distinctive.

* Change QueryEditor to auto-resize and look more like the one in Prometheus.

* Add autocomplete for time periods for the third arg of Search.

* More CR fixes:
- fix missing break
- add unit tests for statementPosition
- fix broken time period
- sort time periods

* Bug fix
2022-02-01 22:53:32 -05:00
Nathan Marrs b2b584f611 Geomap: Improve tooltip UX and fix data links (#44740) 2022-02-01 18:17:39 -08:00
Santiago 04d93751b8 Alerting: send alerts to external, internal, or both alertmanagers (#40341)
* (WIP) send alerts to external, internal, or both alertmanagers

* Modify admin configuration endpoint, update swagger docs

* Integration test for admin config updated

* Code review changes

* Fix alertmanagers choice not changing bug, add unit test

* Add AlertmanagersChoice as enum in swagger, code review changes

* Fix API and tests errors

* Change enum from int to string, use 'SendAlertsTo' instead of 'AlertmanagerChoice' where necessary

* Fix tests to reflect last changes

* Keep senders running when alerts are handled just internally

* Check if any external AM has been discovered before sending alerts, update tests

* remove duplicate data from logs

* update comment

* represent alertmanagers choice as an int instead of a string

* default alertmanagers choice to all alertmanagers, test cases

* update definitions and generate spec
2022-02-01 20:36:55 -03:00
Atif Shoukat Ali 21796c61ba Geomap: fix casing for panel options (#44688)
* fix casing for panel options

* remove hardcoded label values
2022-02-01 15:09:19 -08:00
Cat Perry a86d7a5a90 Tempo: Show error if transformTrace() is passed bad data to parse to JSON (#44684)
* Surface errors if transformTrace() is passed bad data to parse
2022-02-01 14:39:09 -08:00
Sergej Zagursky 1f4fdf31df Fix one more typo in data rate unit names (#44675) 2022-02-01 19:49:21 +01:00
Ryan McKinley 7ee38af95a FeatureToggls: remove IsFeatureToggleEnabled from SettingsProvider (#44574) 2022-02-01 10:24:59 -08:00
Connor Lindsey de04f19c47 Tempo: Add request histogram to service graph datalink (#44671) 2022-02-01 10:41:14 -07:00
Gabriel MABILLE f81b9c8150 AccessControl: Read team permissions from db (#44727) 2022-02-01 18:35:31 +01:00
Isabella Siu 55a9c98ae3 CloudWatch: Use metrics query header for logs (#44668)
Co-authored-by: Sarah Zinger <sarahzinger@users.noreply.github.com>
Co-authored-by: Yaelle Chaudy <42030685+yaelleC@users.noreply.github.com>
2022-02-01 11:36:51 -05:00
Ryan McKinley 3749695594 TestData: support dropping points from random walk data and send interval (#44683) 2022-02-01 17:27:52 +01:00
kay delaney 8218d81f0e AnnoListPanel: Add keyboard accessibility (#44280) 2022-02-01 15:33:21 +00:00
Karl Persson e93e1bdd2b Access control: Enable data source view for partial permissions (#44695)
* Return correct value

* Remove scope all requirement

* Only add dashboard sub nav if user is admin
2022-02-01 15:00:05 +01:00
Gabriel MABILLE bc24fdcf8d AccessControl: Team membership migration (#44065)
Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>
Co-authored-by: Jguer <joao.guerreiro@grafana.com>
2022-02-01 14:57:26 +01:00
idafurjes dca3dddafd Add store interface (#44694)
* Add store interface

* Fix lint
2022-02-01 14:51:22 +01:00
Torkel Ödegaard fb680b3575 Loki: Query builder, hook up instant toggle and improve inline switch (#44704) 2022-02-01 13:56:11 +01:00
Gábor Farkas 3873c5e7b5 loki: alerting: better error-handling (#44700) 2022-02-01 13:34:03 +01:00
renovate[bot] 22c3d72d9c Update dependency webpack to v5.68.0 (#44669)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-02-01 11:50:20 +00:00
Selene 875e0736ec LDAP: Use an interface instead of a bus to get group teams (#42165)
* Remove bus for GetTeams for LDAP

* Fix lint
2022-02-01 12:03:21 +01:00
George Robinson 8b2fe460e2 Remove EvaluationValue to avoid redundant copies of labels (#44603) 2022-02-01 09:58:18 +00:00
Peter Holmberg 552c24a66e Alerting: Show affected alert rules when creating Silence (#44307)
* first things

* show affected rules when creating silence

* revert typescript bump

* fix yarn lock

* fix import order

* fixing tests

* some layout for affected alerts

* fix test

* add default description

* review part 1

* Add a badge for number of affected alerts

* fix test

* remove blank space
2022-02-01 09:49:05 +01:00
Erik Sundell dc0a2fb55b Azure monitor Logs: Optimize data fetching in resource picker (#44549)
* refactor resource picker

* add tests

* remove not used code

* remove unnecessary check

* fix broken tests

* update table tests now that we no longer expand second level by default

* add missing new line

* pr feedback

* fix broken test
2022-02-01 09:39:48 +01:00
Levente Balogh c31585c246 feat: use the latest version of @grafana/levitate (#44656) 2022-02-01 09:18:21 +01:00
Yaelle Chaudy 33a7269b4f Cloudwatch : Fixed reseting metric name when changing namespace in Metric Query (#44612)
* Added logic to reset metric name when changing namespace in Metric Query

* Added tests for reseting or not metricName onChange namespace

* Added tests for reseting or not metricName onChange namespace

* Removed comment

* Cleaned up tests

* Refactored namespace to be updated in utils

* Removed unecessary overrides for query and onQueryChange

* Renamed tests + used some instead of find
2022-02-01 09:13:25 +01:00
Todd Treece fd14112dbd Chore: update grafana-plugin-sdk-go to v0.125.0 (#44685) 2022-01-31 22:50:36 -05:00
Ryan McKinley 6a72d97265 TestData: support raw results in the raw frames editor (#44609) 2022-01-31 15:40:58 -08:00
achatterjee-grafana 133e34d52a Docs: Add section about limitations alerting in "Time range controls" (#44680)
* Added section about syntaxes not supported by Grafana. Also updated missing image name.

* Fixed image name again.
2022-01-31 18:15:10 -05:00
Isabella Siu cbbf451b36 CloudWatch: small logs refactors (#44677) 2022-01-31 17:30:16 -05:00
Connor Lindsey 4f44ff7ce8 NodeGraph: Update no data message to show if no nodes (#44483)
* Display error if no service graph data is returned

* Remove error message and update node graph no data logic

* Check processed nodes instead of rendered nodes for no data message

* Remove console.log
2022-01-31 19:30:49 +01:00
Artur Wierzbicki 6e1615b42a Analytics: send dashboard_list_viewed events to rudderstack (#44589)
* #44449: report interactions with showPreviews toggle

* #44449: hookify showPreviews

* #44449: report dashboard_list_viewed event rather than enabled/disabled_dashboard_previews
2022-01-31 22:17:05 +04:00
Torkel Ödegaard e39d43db0a Prometheus: Use explore query field unless new query editor feature toggle is enabled (#44650) 2022-01-31 19:06:08 +01:00
Ivana Huckova 780591cc12 Prometheus: Fix some of the alerting queries that use reduce/math operation (#44380)
* Prometheus: Dont fill response with nulls for alerting queries

* Refactor based on reviews
2022-01-31 18:14:30 +01:00
George Robinson 5e2280ceee Add metrics to ngalert scheduler (#44602)
This pull request adds metrics to the ngalert scheduler so we can see how long it takes to evaluate a tick.
2022-01-31 16:56:43 +00:00
renovate[bot] 793e3d3556 Update sentry-javascript monorepo to v6.17.2 (#44364)
* Update sentry-javascript monorepo to v6.17.2

* update Sentry transport impl to be compat with latest sentry

* kick drone

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Domas <domasx2@gmail.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-01-31 16:51:09 +00:00
Kevin Minehart 69c403ed7d add .nvmrc (#44665) 2022-01-31 10:48:21 -06:00
idafurjes 12420260ef Remove bus from org invite api (#44530)
* Remove bus from org invite api

* Fix lint

* Remove comment
2022-01-31 17:24:52 +01:00
Santiago 7ed82ac049 Check for empty URLs when creating/updating a data source (#42837)
* checks for empty URLs added

* check for TimeSeriesTypeNot to fix InfluxDB alerts

* log a warning when a data frame is ignored

* fix: add brittle Prometheus URL input selector

needs a proper aria-label or test-data-id selector

* test: add URL input aria-label

needs to use the grafana/e2e-selectors package

* test: run ci

* add URL validation for specific data sources, e2e tests

* Update pkg/api/datasource/validation.go

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* delete duplicated logs

* delete unnecessary leading newline

Co-authored-by: gillesdemey <gilles.de.mey@gmail.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2022-01-31 12:39:55 -03:00
Vardan Torosyan 2053049c40 Remove service accounts from public documentation as it's not being released yet (#44658) 2022-01-31 16:37:51 +01:00
Karl Persson 5ca9d2895b Add viewer grant to fixed:datasources:reader if viewers_can_edit is set to true (#44657) 2022-01-31 16:33:41 +01:00
Tharun Rajendran de1661e877 Tempo: Display start time in search results as relative time (#44568)
* Explore: modify tempo trace start time to human readable format in table output

Signed-off-by: tharun <rajendrantharun@live.com>

* add unit tests

Signed-off-by: tharun <rajendrantharun@live.com>
2022-01-31 15:07:43 +00:00
Will Browne 76603b93d6 Plugins: Refactor Grafana and Plugin version update checkers (#44529)
* refactor

* rework plugin update checking

* make smarter

* simplify

* fix linter issue

* make use of mutex

* apply feedback to simplify

* format imports

* fix tests
2022-01-31 16:06:16 +01:00
Will Browne bf8694e709 Plugins: Amend plugins loader log statements (#44652)
* adjust log statements

* Update pkg/plugins/manager/loader/loader.go

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* add errs to logs

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2022-01-31 14:24:51 +00:00
Emil Tullstedt ae2595e86a Chore: Upgrade go-datemath dependency (#44592)
* Datemath: Upgrade dependency

* go mod tidy
2022-01-31 15:17:48 +01:00
Karl Persson 16e62965f5 handle case when scope is wildcard (#44654) 2022-01-31 14:44:20 +01:00
Marcus Efraimsson 333de57999 Plugins: Fix scanning plugins when permission for directories is lacking (#44587)
Fixes so that errors (directory not exists, no permission) when scanning plugins are logged as 
errors rather than with debug level. In addition, before the scanning would halt in case of 
referenced errors, but with these changes the scanning will continue. If any other error 
than the referenced error happens the scanning for specific directory would halt and return 
the error, e.g. stop Grafana from starting.

Fixes #43012
2022-01-31 14:07:10 +01:00
Hugo Häggmark 5a5f5cacc8 Variables: Fix for constant variables in self referencing links (#44631)
* Variables: Fix for constant variables in self referencing links

* Chore: adds bettercomment
2022-01-31 13:34:26 +01:00
renovate[bot] 9035859871 Update dependency sinon to v13 (#44613)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-31 12:31:38 +00:00
Konrad Lalik 88f3dff6d2 Alerting: Fix moving alert rules to a different folder (#44533)
* Prevent rule deletion when creation in a new folder fails

* Fix handling duplication of rules when moving between folders

* Add unit test for unique name generator

* Fix typo
2022-01-31 12:09:06 +01:00
Gábor Farkas aa22499b29 packages: disable auto-updating of slate-related package (#44640) 2022-01-31 11:15:06 +01:00
Gábor Farkas 2c1e7c83ca packages: removed unused @types/slate-react (#44600) 2022-01-31 10:57:46 +01:00
Sergej Zagursky 99ee72688c Fix typos in data rate unit names (#44632) 2022-01-31 10:31:27 +01:00
Timur Olzhabayev 9fe034e5ca chore(toolkit): add toolkit version to signing (#44326) 2022-01-31 09:55:21 +01:00
Josh Hunt d2f80c3a6f Chore: Replace ts-jest mocked with jest.mocked (#44630) 2022-01-31 09:28:58 +01:00
Torkel Ödegaard 64e1e91403 PromQueryBuilder: Query builder and components that can be shared with a loki query builder and others (#42854) 2022-01-31 06:57:14 +00:00
Hugo Häggmark a660ccc6e4 PanelEdit: Adds error indicator in table view (#44595) 2022-01-31 06:02:24 +01:00
Josh Hunt c6ce629fd8 I18n: Translate navigation items (#44131)
* I18n: Translate navigation items

* improve comment, remove console.log

* update mock macros

* Mark up all phrases for translation

* added deprecate text comment, moved translations to a seperate file

* use TestProvider in NavBarItem

* use TestProvider in nav tests

* remove text deprecation comment

* update translations
2022-01-31 03:41:58 +01:00
Josh Hunt b1b6205651 TablePanel: Fix ad-hoc variabes not working on default datasources (#44314)
* Dashboards: Fix ad-hoc variabes not working on default datasources

* not async

* Update comment
2022-01-31 01:16:46 +01:00
achatterjee-grafana d584a27055 Docs: Added information about Prometheus write permission requirement. (#44616)
* Added note.

* Fixed typo.
2022-01-28 19:35:50 -05:00
Artur Wierzbicki 254c59725e Rendering: add capabilities check (#44470)
* #44449: add feature check to rendering service

* #44449: formatting

* #44449: rename feature -> capability (https://developer.mozilla.org/en-US/docs/Web/API/MediaStreamTrack/getCapabilities, https://developer.mozilla.org/en-US/docs/Web/API/InputDeviceInfo/getCapabilities)

* #44449: refactor

* #44449: remove commented code

* Update pkg/services/rendering/capabilities.go

Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>

* #44449: review fixes

Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>
2022-01-28 21:24:15 +04:00
Ivana Huckova 4e37a53a1c Query history: Create API to add query to query history (#44479)
* Create config to enable/disable query history

* Create add to query history functionality

* Add documentation

* Add test

* Refactor

* Add test

* Fix built errors and linting errors

* Refactor

* Remove old tests

* Refactor, adjust based on feedback, add new test

* Update default value
2022-01-28 17:55:09 +01:00
Tania B ca24b95b49 Encryption: Handle encryption key provider being a background service (#44007)
* Encryption: Handle encryption key provider being a background service

* Sort imports

* Cleanup accidental changes

* Add proper error handling

* Apply review feedback
2022-01-28 17:17:40 +02:00
Karl Persson e844b263c7 Access control: Load permissions from memory and database (#42080)
* Load permission from both in memory and from database
Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2022-01-28 16:11:18 +01:00
Gilles De Mey 26ddeaf3d7 fix: multiple queries in alerting regression (#44585) 2022-01-28 16:05:19 +01:00
Connor Lindsey 45a435ad78 Tempo: Auto-clear results when changing query type (#44390)
* Auto-clear results when changing query type

* Move clear results to function
2022-01-28 07:49:43 -07:00
Marcus Efraimsson 919c451156 Chore: Remove unused sqlstore dependency (#44583)
Removes unused sqlstore dependency from plugin management.

Ref #44260
2022-01-28 06:38:19 -05:00
J Guerreiro 312dd9e315 AccessControl: Add AC to team preferences (#44554)
* AccessControl: Add AC to team preferences

* Apply suggestions from code review

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2022-01-28 12:17:54 +01:00
J Guerreiro 2894f07f05 AccessControl: improve denied message (#44551)
* AccessControl: improve denied message

* AccessControl: tweak permission denied
2022-01-28 12:17:24 +01:00
Alex Khomenko 3e0a589ba1 Update @grafana/tsconfig (#44582) 2022-01-28 11:30:06 +01:00
Ashley Harrison 666a794a82 Navigation: Initialise navTree in redux store (#44440)
* Add navTree to redux store and used that in NavBar/NavBarNext

* Use createSlice

* update import

* Use NavBarUnconnected instead of Component
2022-01-28 10:06:52 +00:00
Hugo Häggmark 6de9d241a6 E2E: adds back missing e2e specs (#44576)
* E2E: adds back missing e2e specs

* Chore: removes wrong import directive
2022-01-28 10:39: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
Marcus Efraimsson 94edd7a762 Plugins: Refactor plugin dashboards (#44315)
Moves/refactor Grafana specific functionality related to plugin dashboards 
out to specific services for importing dashboards and keep app plugin dashboards
up-to-date.

Fixes #44257
2022-01-28 10:28:33 +01:00
renovate[bot] 7e26dbb5ff Update dependency @types/prismjs to v1.26.0 (#44561)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-28 10:07:34 +01:00
renovate[bot] ba5fb38c9b Update dependency @opentelemetry/api to v1.1.0 (#44560)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-28 10:04:59 +01:00
Gábor Farkas 6e071d030f loki: added benchmark for metric-response processing (#44539) 2022-01-28 09:44:57 +01:00
Konrad Lalik c6e6e92a80 Alerting: Filtering for notification policies (#44363)
* Add filtering by matching label

* Add label and contact based filters to Notification policies

* Improve filters UI, add clear filters option

* Add clearing of filters before switching to adding mode

* Move filtering code to the AmRoutesTable component

* Fix the clearing of silences filter

* Remove key-based input resetting

* Use uniqueId for input key generation

* Add tests for notification policies filtering
2022-01-28 09:40:05 +01:00
Alex Vandiver 844b194f5b Middleware: Don't require HTTPS for HSTS headers to be emitted (#35147)
Grafana itself may not be serving content over HTTPS, but it may be
behind a transparent proxy which does.

Fixes #26770.  Based on #26868.
2022-01-28 07:23:28 +01:00
achatterjee-grafana 7b476c19c2 fix typo (#44564) 2022-01-27 16:33:55 -05:00
Dan Cech 1e89fc157d update snapshots server url (#44563)
* update snapshots server url
* update all old references to snapshot.raintank.io
2022-01-27 16:11:20 -05:00
Marcus Efraimsson a23900c4ba CodeQL: Ignore go/log-injection for terminal logger (#44481) 2022-01-27 19:01:59 +01:00
Tharun Rajendran 5721933e4b NodeGraph: fix rendering of node graph in dashboard panel (#44552)
Signed-off-by: tharun <rajendrantharun@live.com>
2022-01-27 10:19:54 -07:00
Will Browne b5dd4842d0 Plugins: Make manager more easily composable (#44467)
* make more easily composable

* fix build
2022-01-27 18:06:38 +01:00
Isabella Siu d3b8fc53aa CloudMonitoring: Fix resource labels in query editor (#44550) 2022-01-27 11:35:13 -05:00
Todd Treece 4d1f3a3f6c Recorded Queries: Enable by default (#44397) 2022-01-27 11:09:39 -05:00
J Guerreiro 153b231521 AccessControl: Refine interface for AC store (#44536)
* AccessControl: Refine interface for AC store

* Update pkg/services/accesscontrol/database/resource_permissions.go
2022-01-27 16:47:24 +01:00
Levente Balogh 1f4d53805c fix: backport @grafana/levitate to 0.2.0 (#44543) 2022-01-27 16:38:12 +01:00
J Guerreiro cb6e5ae8ce AccessControl: Add access control actions and scopes to team update and delete
* AccessControl: Add access control actions and scopes to team update and delete

* AccessControl: Add tests for AC guards in update/delete

* AccessControl: add fixed role for team writer

* AccessControl: ensure team related AC is deleted with team

* Update pkg/api/team_test.go
2022-01-27 16:16:44 +01:00
Tania B 1a9c293984 Chore: Remove unused AWS KMS provider's token setting (#44531) 2022-01-27 17:15:49 +02:00
Joey Tawadrous dc7639354e InfluxDB: interpolate all variables in queries for dash->explore (for influxql) (#44415)
* Moved flux case to its own return

* Added missing template replaces for limit, slimit, tz

* Added missing template replaces for select

* Added missing template replaces for group by

* Added tests

* PR changes
2022-01-27 14:00:46 +00:00
Santiago 1bed84ea56 Fix InfluxDB unhealthy alerts and false "no data"s (#43441)
* check for TimeSeriesTypeNot to fix InfluxDB alerts

* log a warning when a data frame is ignored
2022-01-27 10:53:27 -03:00
Gabriel MABILLE 41c8db16ee Accesscontrol: Feature does not need a license (#44517) 2022-01-27 13:43:12 +01:00
Karl Persson bf63ccbe00 Access control: Rewrite access control SQL filter (#44488)
* Rewrite access control sql filter
2022-01-27 13:06:08 +01:00
Gábor Farkas b42161a713 Loki: add from JSON to dataframes tests (#44375)
* Loki: add from JSON to dataframes tests

* fixed wrong content-type

* added -Inf test-case
2022-01-27 12:43:44 +01:00
Giordano Ricci ea48d131ee Explore: deprecate compact URL encoding & dafault to extended (#44385) 2022-01-27 11:23:56 +00:00
Gábor Farkas 465ed9f5d3 CODEOWNERS: update based on renamed github team (#44495) 2022-01-27 11:47:29 +01:00
Richard Hartmann a39eeb966b Fix licensing text (#44518)
* Fix licensing text

Signed-off-by: Richard Hartmann <richih@richih.org>
2022-01-27 11:09:39 +01:00
idafurjes 82892331c1 Chore: Remove bus from signup and playlist api (#44485)
* Remove bus from signup and playlist api

* Remove bus from playlist play
2022-01-27 10:33:02 +01:00
Alex Khomenko 28c51cde3a Feature highlights: Highlight team group sync (#44477)
* Highlight team group sync

* Update text
2022-01-27 09:11:57 +02:00
Leon Sorokin 6533eb9244 TimeSeries: disable fill when fillBelowTo field is missing (#44498) 2022-01-26 17:06:11 -06:00
Artur Wierzbicki 5148250366 Rendering service - add optional RenderingSession (#44098)
* rendering service changes:
- make node-renderer request timeout configurable
- introduce optional RenderingSession providing a long-lived session key

* remove console logs

* added comment explaining empty "afterRequest" method

* fix compilation error

* update imports formatting

* Update pkg/services/rendering/interface.go

Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>

* Update pkg/services/rendering/rendering.go

Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>

* review fix: extract renderKey related functions/structs to auth.go

* #44449: private'd `rendering.getRequestTimeout`

Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>
2022-01-27 02:02:19 +04:00
Ryan McKinley 3c334cd8ba Logger: avoid panic when time is a string (not fmt.Stringer) (#44497) 2022-01-26 13:17:42 -08:00
Nathan Marrs 8a7b469679 Resource picker/improve ux (#44402) 2022-01-26 11:29:04 -08:00
idafurjes 58ee553634 Chore: Remove bus from user api (#44468)
* Chore: Remove bus from user api

* Adu authinfoservice interface

* User authinfoservice.Service instead of authinfoservice.Implementation in HTTPServer

* Rename Implementation to authInfoService
2022-01-26 20:24:05 +01:00
Ryan McKinley 5d66194ec5 FeatureFlags: define features outside settings.Cfg (take 3) (#44443) 2022-01-26 09:44:20 -08:00
Serge Zaitsev 84a5910e56 Chore: Remove bus from ngalert (#44465)
* pass notification service down to the notifiers

* add ns to all notifiers

* remove bus from ngalert notifiers

* use smaller interfaces for notificationservice

* attempt to fix the tests

* remove unused struct field

* simplify notification service mock

* trying to resolve issues in the tests

* make linter happy

* make linter even happier

* linter, you are annoying
2022-01-26 16:42:40 +01:00
Gábor Farkas ad4a9a48d2 CODEOWNERS: update based on o11y squad changes (#44474)
* CODEOWNERS: update based on o11y squad changes

* add back by-mistake deleted part

* move logs-panel to logs-traces-squad
2022-01-26 16:10:38 +01:00
Gabriel MABILLE d4f682190f AccessControl: Implement teams resource service (#43951)
* AccessControl: cover team permissions

Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>

* Add background service as a consumer to resource_services

Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>

* Define actions in roles.go

Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>

* Remove action from accesscontrol model

 Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>

* As suggested by kalle

* move some changes from branch to the skeleton PR

* Add background service as a consumer to resource_services

Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>

* moving resourceservice to the main wire file pt2

* move team related actions so that they can be reused

* PR feedback

* fix

* typo

* Access Control: adding hooks for team member endpoints (#43991)

* AccessControl: cover team permissions

Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>

* Add background service as a consumer to resource_services

Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>

* Define actions in roles.go

Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>

* Remove action from accesscontrol model

 Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>

* As suggested by kalle

* add access control to list and add team member endpoint, and hooks for adding team members

* member permission type is 0

* add ID scope for team permission checks

* add more team actions, use Member for member permission name

* protect team member update endpoint with FGAC permissions

* update SQL functions for teams and the corresponding tests

* also protect team member removal endpoint with FGAC permissions and add a hook to permission service

* a few small fixes, provide team permission service to test setup

* AccessControl: cover team permissions

Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>

* Add background service as a consumer to resource_services

Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>

* Define actions in roles.go

Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>

* Remove action from accesscontrol model

 Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>

* As suggested by kalle

* move some changes from branch to the skeleton PR

* remove resource services from wireexts

* remove unneeded actions

* linting fix

* remove comments

* feedback fixes

* feedback

* simplifying

* remove team member within the same transaction

* fix a mistake with the error

* call the correct sql fction

* linting

* Access control: tests for team member endpoints (#44177)

* tests for team member endpoints

* clean up and fix the tests

* fixing tests take 2

* don't import enterprise test license

* don't import enterprise test license

* remove unused variable

Co-authored-by: gamab <gabi.mabs@gmail.com>
Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>

Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>
2022-01-26 14:48:41 +00:00
renovate[bot] 46422a82c8 Update dependency @visx/tooltip to v2.8.0 (#44458)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-26 14:43:44 +00:00
renovate[bot] 19340502a6 Update dependency eslint-plugin-jsdoc to v37.7.0 (#44459)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-26 14:42:45 +00:00
Morten Nygaard Åsnes 9e4aafa719 MSSQL: Configuration of certificate verification for TLS connection (#31865)
Fixes #24589

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2022-01-26 15:00:18 +01:00
Marcus Efraimsson 50fabe8a87 Chore: Implements log15 terminal logger (#44447)
Nicer development/terminal output based on log15 terminal logger.
2022-01-26 12:19:43 +01:00
Mitsuhiro Tanda d1083b9597 Cloud Monitoring: Reduce request size when listing labels (#44365) 2022-01-26 12:02:42 +01:00
Marcus Efraimsson 7593fc0a20 Provisioning: Fix duplicate validation when multiple organizations have been configured (#44151)
Fix duplicate validation when multiple organizations have been configured. 
This makes sure that all duplicate validation is being made for each organization.

Fixes #44126
2022-01-26 11:33:31 +01:00
Alex Khomenko 55e1c53e36 NavModel: Enable adding suffix elements to tabs (#44155)
* Trigger extra events

* Extend html attributes

* Add suffix to tabs

* Add upgrade routes

* suffix => highlightText

* suffix => suffixText

* Add size prop

* Update prop name

* Convert tabSuffix to a component
2022-01-26 09:15:45 +02:00
Leon Sorokin a20894c261 Formatters: speed up toDuration() (#44345) 2022-01-25 22:14:59 -06:00
Katarina Yang 92ca38bedf Refactor: Change sqlstore.inTransaction to SQLStore.WithTransactionalDBSession in misc files (#43926)
* Refactor: Change sqlstore.inTransaction to SQLStore.WithTransactionalDBSession in misc files

* Refactor: Change .inTransaction in org.go file

* Refactor: Update init() to proper SQLStore handlers

* Refactor: Update funcs in tests to be sqlStore methods

* Refactor: Update API funcs to receive HTTPServer

* Fix: define methods on sqlstore

* Adjust GetSignedInUser calls

* Refactor: Add sqlStore to Service struct

* Chore: Add back black spaces to remove file from PR

Co-authored-by: Ida Furjesova <ida.furjesova@grafana.com>
2022-01-25 20:30:08 +01:00
Paschalis Tsilias eed9e5543d Fix link to contribute/documentation page (#44322)
Signed-off-by: Paschalis Tsilias <paschalis.tsilias@grafana.com>
2022-01-25 13:58:48 -05:00
Isabella Siu 50e7ac8d65 CloudMonitoring: use @grafana/google-sdk (#44398) 2022-01-25 13:10:14 -05:00
Nathan Marrs 5c9d2d6b3e Update documentation to to notify of removal of 2 modules from grafana-ui (#44341) 2022-01-25 09:57:12 -08:00
Andres Martinez Gotor af0ece12f9 CloudMonitoring: Fix fastpass issues (#44277) 2022-01-25 17:28:59 +01:00
Karl Persson de2c5783fa Access Control: Pass db session to hooks (#44428)
* Move hook calls to database and pass session
2022-01-25 17:12:00 +01:00
Marcus Efraimsson 9ab9fd802b OAuth: Fix parsing of ID token if header contains non-string value (#44159)
Fixes #41111
2022-01-25 17:09:35 +01:00
kay delaney 3c1122cf29 CollapsableSection: Improves keyboard navigation and screen-reader support (#44005) 2022-01-25 15:36:17 +00:00
renovate[bot] 291d8aac7e Update dependency mocha to v9.2.0 (#44372)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-25 15:28:51 +00:00
Will Browne 124bf413a2 make plugin loading for nested plugins more deterministic (#44330) 2022-01-25 16:05:12 +01:00
renovate[bot] e9375ecd4c Update dependency rollup to v2.66.1 (#44348)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-25 15:59:06 +01:00
renovate[bot] 8f621516ff Update dependency webpack to v5.67.0 (#44338)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-25 15:58:34 +01:00
Marcus Efraimsson 62b69a0b90 Revert "Search: Fix only searching for folder id zero (#44175)" (#44424)
This reverts commit 007cd144a9 from #44175.
2022-01-25 15:04:26 +01:00
Sergey Kostrukov cb09162cde Datasources: Simplify the AzureCredentials structure in datasource config (#39209)
Related #35857

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2022-01-25 14:23:32 +01:00
Maria Alexandra 58b8d84085 Old Table: Table is not rendering when col property is undefined (#44129) 2022-01-25 14:22:57 +01:00
Kevin Burke 24efb42f19 app/core/components/TraceToLogsSettings: fix spelling error (#44399)
"Let's" is an abbreviation of "let us", which is not the right use in
this sentence on the settings page.
2022-01-25 12:42:48 +01:00
Dimitris Sotirakis ef35cb5318 Update grabpl version (#44410) 2022-01-25 09:40:26 +01:00
Torkel Ödegaard 566556fea2 QueryEditors: Restore query editor margin to what old value (#44384) 2022-01-25 09:19:39 +01:00
Alex Khomenko aead2e9157 Navigation: allow adding extra content (#44048)
* Add PRO badge

* Allow adding extra content

* Add extra content for the new navbar

* Use highlight text instead of extra content

* Trigger extra events

* Remove ExtraContent

* Update public/app/core/components/NavBar/NavFeatureHighlight.tsx

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>

* Remove redundant i

* Add UpgradeBox

* Move highlight to menu trigger

* Clear navbar next

* Cleanup

* Fix UpgradeBox styles

* Add arrow icon

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-01-25 10:04:44 +02:00
Ryan McKinley c0fc60dfef Table: default display for geometry fields (#44347) 2022-01-24 16:10:36 -08:00
idafurjes dbb2d3af73 Chore: Fix attribute value (#44368)
* Fix attribute value

* Fix also the value for opentracing
2022-01-24 18:17:39 +01:00
Ryan McKinley b88811e2af DataFrame: deprecate/remove field.parse(any) (#44299) 2022-01-24 16:27:35 +00:00
Erin Noe-Payne ac945fb6e1 Tempo / Trace Viewer: Implement deep linking to spans 2022-01-24 08:49:35 -07:00
Igor Suleymanov fdeaf7a5c4 Add nil checks to HTTP request validation dispatch (#44371)
Signed-off-by: Igor Suleymanov <igor.suleymanov@grafana.com>
2022-01-24 16:43:44 +01:00
Peter Holmberg a7423d8760 Alerting: Fix Card link in legacy alerting items (#44094)
* remove href

* revert yarn.lock
2022-01-24 16:16:55 +01:00
Agnès Toulet 65bdb3a899 FeatureFlags: Revert managing feature flags outside of settings.Cfg (#44382)
* Revert "FeatureToggles: register all enterprise feature toggles (#44336)"

This reverts commit f53b3fb007.

* Revert "FeatureFlags: manage feature flags outside of settings.Cfg (#43692)"

This reverts commit f94c0decbd.
2022-01-24 16:08:05 +01:00
Guilherme Caulada 29268483c2 HTTPServer: Implement named middlewares (#44231)
* Implement named middlewares on http server

* Fix minor ordering issue with named middlewares
2022-01-24 10:41:18 -03:00
Gábor Farkas 9161f9d2e1 prometheus: added json-loading benchmark (#44309) 2022-01-24 14:39:26 +01:00
J Guerreiro 84c89ec61e Docs: Add usage stats preview to doc (#43995)
* Docs: Add usage stats preview to doc

* Fix: remove permissions references
2022-01-24 14:24:58 +01:00
renovate[bot] 80c79bcdc2 Update dependency lint-staged to v12.3.1 (#44354)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-24 04:56:05 -08:00
renovate[bot] 52a55e69e9 Update dependency stylelint to v14.3.0 (#44355)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-24 04:55:51 -08:00
Zoltán Bedi f16047660a StateTimeline: Show more precise duration (#44046)
* StateTimeline: Show more precise duration

* Add Leon's calculation

* Change to 30 days

Remove console logs. Add more tests.
2022-01-24 13:32:55 +01:00
Jack Westbrook ed7552db79 Renovate: Separate storybook from monthly patches (#44373) 2022-01-24 12:44:36 +01:00
idafurjes 00c389933b Chore: Remove bus from team (#44218)
* Remove bus from team

* Fix api team test

* Remove bus from team members
2022-01-24 11:52:35 +01:00
Jack Westbrook c8406baac2 Storybook: Bump to 6.4.13 (#44091)
* chore(storybook): bump to 6.4.13

* revert(yarnrc): put back double quotes

* chore(storybook): fix issues with resolving process

* revert(yarnrc): put back storybook packageExtensions

* refactor(storybook): move process resolution fix to function. update comments
2022-01-24 11:50:34 +01:00
Gábor Farkas 0f8b0dc301 prometheus: refactor test (#44358) 2022-01-24 11:08:41 +01:00
Dominik Prokop 7ee7dfda2b Stacking: Ignore null/undefined-only stacks instead of assuming 0 value (#44359) 2022-01-24 10:49:47 +01:00
Timur Olzhabayev c3f69cc4d9 Adding reload to datasourceSrv (#44217) 2022-01-24 10:45:05 +01:00
Tharun Rajendran 732c2ebb37 Explore: show scalar data result in a table instead of graph (#44362)
Signed-off-by: tharun <rajendrantharun@live.com>
2022-01-24 10:22:06 +01:00
Tim Levett 641e34e341 Bug: Fixed User API Link (#44342)
Very minor fix to complete the User API link.
2022-01-23 06:33:50 +01:00
Nathan Marrs 76827c2069 Refactor: move threshold editor out of grafana-ui (#44300) 2022-01-21 16:17:33 -08:00
Jeff Levin c8154b9fe2 Datasource API: #32556 resolve readonly datasources can be modified (#44186)
* Check if datasource is read-only when making an update
* Standardize api returning a 404 if datasource is not found while making an update

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>, Jesse Weaver<pianohacker@gmail.com>
2022-01-21 14:22:43 -09:00
Leon Sorokin 79ec3ec54c TimeSeries: prevent threshold line color from affecting grid lines (#44337) 2022-01-21 17:19:53 -06:00
Ryan McKinley 082b1b4db7 Geomap: add spatial transformers (alpha) (#44020) 2022-01-21 14:27:26 -08:00
Ryan McKinley f53b3fb007 FeatureToggles: register all enterprise feature toggles (#44336) 2022-01-21 20:36:28 +01:00
Marius Bezuidenhout 9fc0aee02b Feature/mathandreduce (#41608)
* Added new math functions: round, ceil, floor 
* Added a new reduce function: last.
2022-01-21 13:15:50 -05:00
Jason Walton 5d0bc9e933 docs: Fix URL for Github callback in OAuth. (#41122) 2022-01-21 10:57:44 -05:00
Andres Martinez Gotor addeba7f05 AzureMonitor: Allow template variables in the subscription field (#44312) 2022-01-21 16:50:13 +01:00
Yuriy Tseretyan ce0ef0ef5e create only one folder per dashboard with acl (#44283) 2022-01-21 10:24:41 -05:00
JM 8a21385481 Docs: add API pages to HTTP API list (#42997)
* add API pages to HTTP API list

* fix capitalization of page names
2022-01-21 10:19:11 -05:00
Greg Myers c1ff35a7ee Fix typos in READMEs (#44084)
packaging/docker/README.md:31: compatability ==> compatibility
public/app/plugins/panel/debug/README.md:5: performace ==> performance
2022-01-21 16:10:48 +01:00
Christopher Norris f2da409703 Chore: fix typo (#44188) 2022-01-21 15:58:40 +01:00
Dominik Haßelkuss d7683aaa17 Docs: fixed typo (#42784) 2022-01-21 15:54:04 +01:00
Josh Hunt bddf3d7558 Chore: Correctly escape strings in JSONFormatter (#44096)
* Chore: Properly escape double-quotes in strings in JSONFormatter

* escape slashes
2022-01-21 14:51:59 +00:00
Jean-Philippe Quéméner 8ee3f59cd4 Alerting: recognize Cortex datasources correctly in the frontend (#44316)
* Alerting: always use msg field for user facing errors

* fix: revert front-end Cortex detection

Co-authored-by: gillesdemey <gilles.de.mey@gmail.com>
2022-01-21 15:44:11 +01:00
Ashley Harrison e1af78954f Only modify table spacing (#44313) 2022-01-21 13:38:13 +00:00
Marcus Efraimsson 007cd144a9 Search: Fix only searching for folder id zero (#44175)
Fixes so that searching for folder id zero in folder/dashboard search returns 
dashboards located in the general folder and not including all folders as it 
did before.

Fixes #40273
2022-01-21 13:51:58 +01:00
Will Browne da98ebdcdf Plugins: Remove old code related to Core plugin installs (#44311)
* remove old code

* remove even more

* skip flaky test
2022-01-21 13:38:04 +01:00
Yaelle Chaudy 164ce63e28 CloudWatch: Fix MetricName resetting on Namespace change (#44165)
* Added tests for wanted behavious in MetricsStatEditor

* Removed wrong import

* Updated MetricStatEditor to add new behaviour

* Updated tests to use react-select-event

* removed unused export

* Adding check for empty string in select value and force null

* clean up

* added check to avoid call to getMetric if there is no metricName selected

* removed todo

* removed empty lines

* Moved external import to top

* Refactored tests to copy props rather than overriding them
2022-01-21 12:19:09 +01:00
renovate[bot] 5b7e05cde0 Update dependency sass to v1.49.0 (#44214)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-21 10:38:59 +00:00
renovate[bot] 9371690645 Update dependency cypress to v9.3.1 (#44206)
* Update dependency cypress to v9.3.1

* Upgrade cypress image

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2022-01-21 11:34:36 +01:00
Torkel Ödegaard f3859f8b60 Templating: Fixes flickering of repeated panels and rows (#43399) 2022-01-21 11:26:40 +01:00
Will Browne 3cb0fb3ddc fix and add test (#44286) 2022-01-21 11:00:20 +01:00
renovate[bot] 1ae155d2b1 Update dependency lint-staged to v12.2.2 (#44213)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-21 09:52:47 +00:00
renovate[bot] 53dfae3c86 Update dependency rollup to v2.65.0 (#44302)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-21 09:37:03 +00:00
renovate[bot] ed03a607b7 Update dependency rc-cascader to v3 (#44241)
* Update dependency rc-cascader to v3

* type changes for rc-cascader v3

* kick drone

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-01-21 09:29:32 +00:00
renovate[bot] a638cfbcaa Update dependency @visx/event to v2.6.0 (#44292)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-21 08:24:23 +00:00
Ikko Ashimine 3be082b2bf Transformers: fix typo in convertFieldType.ts (#44297) 2022-01-21 04:48:19 +00:00
Nathan Marrs c6e853a13c Refactor: Move Value Mappings to Grafana public instead of Grafana UI (#44237) 2022-01-20 20:36:34 -08:00
Dave Henderson 3d865a3687 Update dependency github.com/influxdata/influxdb-client-go/v2 to v2.6.0 (#44225)
Signed-off-by: Dave Henderson <dave.henderson@grafana.com>
2022-01-20 23:31:16 +01:00
Ryan McKinley f94c0decbd FeatureFlags: manage feature flags outside of settings.Cfg (#43692) 2022-01-20 13:42:05 -08:00
Will Browne 7fbc7d019a Plugins: Core plugins register via backend factory provider (#43171)
* refactoring store interface and init flow

* fix import

* fix linter

* refactor resource calling

* load with class

* re-order args

* fix tests

* fix linter

* remove old creator

* add custom config struct

* fix some tests

* cleanup

* fix

* tackle plugins

* fix linter

* refactor and fix test

* add connect failure error

* add fix for azure, cloud monitoring and test data

* restructure

* remove unused err

* add fake tracer for test

* fix grafana ds plugin
2022-01-20 18:16:22 +01:00
Ryan McKinley 2fd76ecaf7 TestData: use CodeEditor for csv content (#44239) 2022-01-20 09:05:36 -08:00
Dimitris Sotirakis 22eb2df602 E2E: Rename end-to-end-tests-server to grafana-server (#44249)
* Rename to grafana-server / move scripts into new directory

* Change grafana-server step command

* Change scripts paths

* Use test grabpl version

* Update run-suite script

* Further name updates

* Update grabpl version

* Update contribute/style-guides/e2e-core.md

Co-authored-by: Maria Alexandra <239999+axelavargas@users.noreply.github.com>

Co-authored-by: Maria Alexandra <239999+axelavargas@users.noreply.github.com>
2022-01-20 17:01:00 +00:00
Eric Leijonmarck 9ccc7ec76e Serviceaccounts: convert selection of apikeys to serviceaccounts (#44154)
* convert selected of apikeys to serviceaccounts

* update to use one by one

* expose endpoint of service account
2022-01-20 16:51:18 +01:00
Dominik Prokop 7bf25f62e1 Cursor sync: Apply the settings without saving the dashboard (#44270)
* Cursor sync: Apply the settings without saving the dashboard

* Remove unnecessary code

* Lint god damn
2022-01-20 16:38:10 +01:00
renovate[bot] ab4aa86e67 Update dependency css-minimizer-webpack-plugin to v3.4.1 (#44205)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-20 15:35:23 +00:00
kay delaney cc6839a21d TablePanel: Make column headers keyboard-friendly (#44267) 2022-01-20 14:31:27 +00:00
Timur Olzhabayev ebbb283d75 fix(40590): bundle the readme files of datasources inside app plugins (#44068) 2022-01-20 14:13:31 +00:00
Todd Treece f4a0f21b3c Chore: Update grafana-plugin-sdk-go and containerd dependencies (#44226) 2022-01-20 09:06:26 -05:00
Isabella Siu 2c3bed1f4b CloudWatch: remove unused "live" log code (#44185) 2022-01-20 08:58:39 -05:00
Kyle Brandt 74193b3c1b SSE: Remove beta tooltip (#43912) 2022-01-20 08:52:36 -05:00
kay delaney a728e9b4dd MixedDatasource: Fixes infinite loop with empty query panel (#44265)
* MixedDatasource: Fixes infinite loop with empty query panel
2022-01-20 13:12:45 +00:00
idafurjes 30aa24a183 Chore: Implement OpenTelemtry in Grafana (#42674)
* Separate Tracer interface to TracerService and Tracer

* Fix lint

* Fix:Make it possible to start spans for both opentracing and opentelemetry in ds proxy

* Add span methods, use span interface for rest of tracing

* Fix logs in tracing

* Fix tests that are related to tracing

* Fix resourcepermissions test

* Fix some tests

* Fix more tests

* Add TracingService to wire cli runner

* Remove GlobalTracer from bus

* Renaming test function

* Remove GlobalTracer from TSDB

* Replace GlobalTracer in api

* Adjust tests to the InitializeForTests func

* Remove GlobalTracer from services

* Remove GlobalTracer

* Remove bus.NewTest

* Remove Tracer interface

* Add InitializeForBus

* Simplify tests

* Clean up tests

* Rename TracerService to Tracer

* Update pkg/middleware/request_tracing.go

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Initialize tracer before passing it to SQLStore initialization in commands

* Remove tests for opentracing

* Set span attributes correctly, remove unnecessary trace initiliazation form test

* Add tracer instance to newSQLStore

* Fix changes due to rebase

* Add modified tracing middleware test

* Fix opentracing implementation tags

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2022-01-20 11:10:12 +01:00
Jack Westbrook 5b61273497 CI: Update breaking changes workflow to compare against main (#44097)
* ci(breaking-changes): split into separate builds for pr and main

* ci(breaking-changes): add path for npm install steps

* ci(breaking-changes): fix up workflow, update bash script
2022-01-20 10:20:32 +01:00
Dominik Prokop 0a5771ee6b TimeSeries/BarChart/XYChart: Allow hiding x axis (#44107)
* TimeSeries/BarChart/XYChart: Allow hiding x axis

* Update public/app/plugins/panel/barchart/utils.ts

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>

* Migrations

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
2022-01-20 00:38:32 -08:00
Dominik Prokop 9f0889c402 TablePanel: Makes footer not overlap table content (#44210) 2022-01-20 00:37:49 -08:00
Andres Martinez Gotor 46caa1af66 AzureMonitor: Request multiple pages of resource names (#44208) 2022-01-20 09:30:09 +01:00
Alexander Emelin 239ead8d8e Fix WebSockets configuration for Nginx (#44148) (#44211)
Co-authored-by: Gleb Goncharov <gongled@gongled.ru>
2022-01-20 10:14:45 +03:00
Kyle Cunningham 6958de846c Accessibility Fixes for Several SQL Based Query Editors (#43981)
* Fix postgres QE a11y label issue

* Add aria-label to query-editor

* Remove unecessary element ID.

* Use aria-labeledby instead of aria-label

* Prefer aria-labelby with dynamic ids

* Prefer "for" over aria-labeledby

* Prefer "for" over aria-labeledby for MSSQL QE
2022-01-19 15:56:33 -06:00
Kyle Cunningham febc24522d Accessibility Fixes for Several SQL Based Datasource Config Pages (#43982)
* Add label elements for select boxes: MSSQL config

* Add Permission level label

* Add aria-label for password field

* Fixes for Postgres a11y page

* Fix whitespace error

* Swap aria-labelby for "for"

* Prefer "for" over aria-labeledby
2022-01-19 15:53:54 -06:00
Katarina Yang 61974383d7 Refactor: Change sqlstore.inTransaction to SQLStore.WithTransactionalDBSession in alert files (#43815)
* Refactor: Change sqlstore.inTransaction to SQLStore.WithTransactionalDBSession in alert files

* Fix: Revert second SaveAlerts back to normal func

* Refactor: Update tests so functions are now SQLStore methods

* Fix: Refactor pauseAlert and pauseAllAlerts to be SQLStore methods

* Fix: Refactor SaveAlerts to be SQLStore method

* Refactor: Update SaveAlerts func signature to have correct arguments

* Refactor: Define sqlStore

* Chore: Delete commented out code

* Chore: Remove unused SaveAlertsCommand
2022-01-19 19:25:52 +00:00
kosssi f6b385f0ca docs: Move password information on password smtp section (#42370)
*What this PR does / why we need it:*

The password information is on [enabled section](https://grafana.com/docs/grafana/latest/administration/configuration/#enabled), I move it on [password section](https://grafana.com/docs/grafana/latest/administration/configuration/#password-1).
2022-01-19 12:16:59 -05:00
Dimitris Sotirakis 27fbe82bf1 Remove test-release pipelines (#44220) 2022-01-19 16:42:40 +00:00
Eric Leijonmarck bf4c217b95 Serviceaccounts: refactor list using server admin page (#44122)
* refactor: use server admin listing serviceaccounts

Co-authored-by: Jguer <joao.guerreiro@grafana.com>

* setup route for specifc service account

* add routes to index

* main issue with spelling mistakes

* feat: make routes /serviceacconts/id for navModel

Co-authored-by: Jguer <joao.guerreiro@grafana.com>
Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>

* Update pkg/services/serviceaccounts/manager/service.go

Co-authored-by: Jguer <joao.guerreiro@grafana.com>
Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>
2022-01-19 17:03:45 +01:00
Josh Hunt 9f97f05fcc DashboardSettings: Prevent Dashboard permissions from linking to folder permissions when user does not have sufficient permissions (#44212)
* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* add tests

* fix up

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Alexandra Vargas <alexa1866@gmail.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
2022-01-19 16:27:33 +01:00
Alexander Zobnin dc913f2311 Access control: fetch role options only if user has permissions (#44201)
* Access control: fetch role options only if user has permissions

* Fix org/users page
2022-01-19 16:15:52 +03:00
Dimitris Sotirakis 46280848d8 CI: Release automation fixes (#44200)
* Change bucket

(cherry picked from commit f7b85c5dd9)

* Make publish-packages depend on publish-artifacts pipeline

(cherry picked from commit 1c91e84f17)

* Change bucket for windows .msi installers

(cherry picked from commit 5ce49e48df)
2022-01-19 15:12:57 +02:00
Ashley Harrison d4d306d825 Dashboard: Prevent Mixed datasources using the test datasource crashing (#44128)
* Special case mixed datasources... :/

* Revert "Special case mixed datasources... :/"

This reverts commit dd0e3ea4a8.

* Ensure testdata persists datasource when switching scenario

* Add a unit test to prevent regressions

* kick drone
2022-01-19 13:04:35 +00:00
renovate[bot] 2c75b444c0 Update dependency ol to v6.12.0 (#43651)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-19 11:58:28 +00:00
Fredrik Enestad 93a8ce6292 Governance: Update Fredrik Enestad (#43871) 2022-01-19 11:52:48 +00:00
renovate[bot] 0f38afffe3 Update dependency mini-css-extract-plugin to v2.5.2 (#44069)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-19 11:47:13 +00:00
renovate[bot] 9bec3b34dc Update dependency axios to v0.25.0 (#44163)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-19 11:36:50 +00:00
renovate[bot] 527f1e8a84 Update typescript-eslint monorepo to v5.10.0 (#44134)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-19 11:35:38 +00:00
renovate[bot] 633da39d53 Update dependency rollup to v2.64.0 (#44053)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-19 11:34:21 +00:00
Gabriel MABILLE fc405ea9da AccessControl: Make Permissions component customizable (#43992)
* Setting default values for props

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

* Using table instead

Co-authored-by: Kalle Persson <kalle.persson@grafana.com>
2022-01-19 12:19:46 +01:00
Ashley Harrison e9f8b40e18 Chore: remove e2e/build_results.zip and add to .gitignore (#44197) 2022-01-19 10:50:55 +00:00
Gabriel MABILLE ba839d1f7c AccessControl: Refactor addAccessControlQueryParam (#44191)
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2022-01-19 11:27:45 +01:00
Agnès Toulet 99cdb56f72 Analytics: add experimentview events (#44120)
* Analytics: add experimentview event

* remove ref to feature-highlights

* Experimentview -> ExperimentView
2022-01-19 11:07:18 +01:00
Ashley Harrison 252645b330 Playlists: Enable sharing direct links to playlists (#44161)
* Special case mixed datasources... :/

* Hacky implementation of playlist share modal

* Refactor StartModal into PlaylistSettingsModal

* Revert "Refactor StartModal into PlaylistSettingsModal"

This reverts commit e71fc33865.

* Create new ShareModal component

* Revert "Special case mixed datasources... :/"

This reverts commit dd0e3ea4a8.

* PlaylistMode instead of PlaylistModes

* kick drone
2022-01-19 09:44:29 +00:00
J Guerreiro 7dab52869e ServiceAccounts: Add detail view of service account (#44164)
* ServiceAccounts: Add detail view of service account

Co-authored-by: eleijonmarck <eric.leijonmarck@gmail.com>

* ServiceAccount: Make detail view scopeID

Co-authored-by: eleijonmarck <eric.leijonmarck@gmail.com>

* ServiceAccount: fix lint error

Co-authored-by: eleijonmarck <eric.leijonmarck@gmail.com>

Co-authored-by: eleijonmarck <eric.leijonmarck@gmail.com>
2022-01-19 10:23:46 +01:00
Dessen Xu 8917e66eb4 Fix kiosk bug (#43152)
* fix_kiosk_bug

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Sofia Papagiannaki <sofia@grafana.com>
2022-01-19 10:58:22 +02:00
Jeremy Price 6ae7b0c3b2 Accesscontrol: list tokens for service account (#43809)
* Add list tokens endpoint

* Update api.go

Co-authored-by: J Guerreiro <joao.guerreiro@grafana.com>
2022-01-19 09:55:38 +01:00
Christopher Moyer 449c608ef1 Docs/panel refactor (#43569)
* new refactored panel docs

* fixed links

* removed xtra sharing link, added links to panel display option tasks

* fixed typo

* add aliases

* incorporate PM feedback

* intermediate commit to resolve merge conflict

* final changes to resolve merge conflicts
2022-01-18 15:06:27 -06:00
Travis Patterson 959723050f Fix change to mixed bahavior (#44179)
- If the datasource is already set to mixed, don't change any queries in the editor
2022-01-18 13:54:51 -07:00
Nathan Rodman b98a1d79cf Alerting: mute timing improvements (#43940)
* mute timing table ui fixes

* add options for CTA to use link

* fix validation for time range
2022-01-18 10:46:36 -08:00
Andres Martinez Gotor fe46a5afe7 AzureMonitor: Scroll to selected resource in the resource picker (#43976) 2022-01-18 18:01:03 +01:00
Gabriel MABILLE 54280fc9d7 AccessControl: Resolve attribute based scopes to id based scopes (#40742)
* AccessControl: POC scope attribute resolution

Refactor based on ScopeMutators

test errors and calls to cache

Add comments to tests

Rename logger

Create keywordMutator only once

* AccessControl: Add AttributeScopeResolver registration

Co-authored-by: gamab <gabriel.mabille@grafana.com>

* AccessControl: Add AttributeScopeResolver to datasources

Co-authored-by: gamab <gabriel.mabille@grafana.com>

* Test evaluation with translation

* fix imports

* AccessControl: Test attribute resolver

* Fix trailing white space

* Make ScopeResolver public for enterprise redefine

* Handle wildcard

Co-authored-by: Jguer <joao.guerreiro@grafana.com>

Co-authored-by: jguer <joao.guerreiro@grafana.com>
2022-01-18 17:34:35 +01:00
Grot (@grafanabot) 7a622422a9 ReleaseNotes: Updated changelog and release notes for 7.5.13 (#44173) 2022-01-18 18:33:58 +02:00
Dimitris Sotirakis 3d6c905eb8 Update latest.json (#44172) 2022-01-18 17:20:16 +01:00
Grot (@grafanabot) 978d6fd72b ReleaseNotes: Updated changelog and release notes for 8.3.4 (#44171) 2022-01-18 18:13:59 +02:00
Dimitris Sotirakis c1ba0afdc7 GetUserInfo: Return an error if no user was found (#44169)
* return an error if no user was found

* Update database.go

Co-authored-by: Kevin Minehart <kmineh0151@gmail.com>
2022-01-18 17:03:16 +01:00
renovate[bot] 2048060df0 Update dependency react-calendar to v3.6.0 (#44121)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-18 07:10:11 -08:00
Shirley 75263ed7cc Use ids instead of aria-labels (#44012) 2022-01-18 14:31:51 +01:00
Karl Persson acb791bdd6 Disable select when permissions is not managed or if user does not have (#44144)
* Disable select when permissions is not managed
2022-01-18 12:45:14 +01:00
Dimitris Sotirakis 118cc0d735 Replace docker-puppeteer with the one in grafana dockerhub repo (#44145) 2022-01-18 12:23:21 +01:00
Javier Palomo bc74d44cee Circleci: remove unused config (#44136)
CircleCI is being triggered but there are no workflows being executed.
CI is driven by Drone.
2022-01-18 09:02:44 +00:00
Dominik Prokop 2561864767 Table panel: Migrate time series aggregation Current to Last not null, instead of last (#44113) 2022-01-18 00:34:56 -08:00
Andres Martinez Gotor 4e1c7e868e Cloudwatch: use the backend HTTP client provider (#44036) 2022-01-18 09:34:12 +01:00
Timur Olzhabayev fffd4c10b7 chore(checks): skip draft PRs (#43519)
* chore(checks): skip draft PRs for PR checks action
2022-01-17 19:16:33 +01:00
Josh Hunt 36983d8d3b Chore: Mark up User Profile page for translation (#43874)
* Mark up User profile page for translation

* Extract new messages

* updated selectors

* update selectors

* wip TestProvider

* update tests

* fix field labels

* extract new messages

* don't store date objects in redux state

* don't store date objects in redux state
2022-01-17 16:58:49 +00:00
malcolmholmes 6d072ad84d Split prepare-release (#44124) 2022-01-17 16:00:53 +00:00
Gabi Davar c4b345cfc4 Fix issue link (#42891) 2022-01-17 15:40:46 +00:00
malcolmholmes cc9cbb8fab Release: remove bump from prepare release action (#44111) 2022-01-17 15:18:13 +00:00
Alexander Zobnin 867ca5b59e Access control: Team role picker (#43418)
* Refactor: move fetching from role picker to parent component

* Make built in role props optional

* Initial team role picker

* Add role picker to the teams list

* Optimize fetching roles

* Add pagination for the teams page

* Fix tests

* Hide roles if access control not enabled

* Fix test snapshots

* Refactor: use useAsync() hook

* Refactor: simplify input component

* Move api calls to separate file

* Refactor: use useAsync() hook for user role picker

* Tweak role picker input width

* Fix pagination

* Update test snapshots

* Use loading state from useAsync() hook

* Fix roles label if no roles assigned
2022-01-17 18:04:54 +03:00
Jack Westbrook e888a40531 Plugins: Add notices to docs to prevent NPX commands from hanging (#44043)
* docs(plugins): add notice about npm 7 flag to prevent commands from hanging

* Apply suggestions from code review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2022-01-17 15:58:36 +01:00
Erik Sundell 5ae5a2e0d0 Azure Monitor: Improved error messages for variable queries (#43213) 2022-01-17 15:51:56 +01:00
Erik Sundell 715166baf3 CloudMonitoring: Fixes broken variable queries that use group bys (#43914) 2022-01-17 15:51:24 +01:00
Piotr Jamróz 9fb8339f87 Elastic: Allow using long/int as date field for alerts (#44027)
* Use integers for time range filter

Previously it was passed as a string which is automatically converted by Elastic to a number only if the field type is "date". For other types (e.g. "long") such conversion doesn't work. In theory "date" could be passed as a formatted string but we don't use it this way and always pass it as a number so it is safe to always pass numbers, not strings.

* Fix time_series_query_test

* Retrigger build
2022-01-17 15:45:09 +01:00
Ivana Huckova e704110f74 Prometheus: Fix interpolation of $__rate_interval variable (#44035)
* Name fields based on targets length

* Remove rounding in rate interval variable replacing

* Refactor and fix edge  case when interval and time duration would be rate interval

* Add tests

* Remove , from test

* Revert "Name fields based on targets length"

This reverts commit 5dcb34a765.
2022-01-17 15:32:23 +01:00
Gilles De Mey bd9df4f829 Alerting: show deleted datasource (#43891) 2022-01-17 14:30:00 +01:00
William Assis f6b70e0a69 Dashboard save interaction evt (#43304) 2022-01-17 14:07:36 +01:00
Hugo Häggmark 4b4afc7b2c Chore: reduces circular dependencies for variables/utils.ts (#44087)
* Chore: move constants to own file

* Chore: moves safe* functions to grafana/data

* Chore: moves safe* functions to grafana/data

* Chore: adds VariableQueryEditorProps and deprecates VariableQueryProps

* Chore: remove getDefaultVariableAdapters function

* Chore: moves transaction status to types

* Chore: fix tests that do not initialise TemplateSrv

* Chore: change space when stringifying

* Chore: revert safe* func move

* Chore: remove circular dependency in Explore utils
2022-01-17 12:48:26 +01:00
Ashley Harrison aa00af8f2d Chore(CodeQL): Add noopener noreferrer to external links in email templates (#44092)
* Add noopener noreferrer to external links in email templates

* missed one...

* kick drone
2022-01-17 11:17:43 +00:00
Ashley Harrison c618339482 Export: Fix error being thrown when exporting dashboards using query variables that reference the default datasource (#44034)
* handle undefined datasources, add unit test

* slightly nicer
2022-01-17 10:21:13 +00:00
Will Browne a65ce992c1 fix delete plugin dashboard (#44055) 2022-01-17 10:33:42 +01:00
Karl Persson f75e4d1a4f Access Control: Allow signed in users access to GET data sources endpoints (#43338)
* remove scopes from endpoints and add datasources:read without scope to
the compatibility role
2022-01-17 10:16:12 +01:00
Eric Leijonmarck f763be8f0f small fix 🙏 (#44089) 2022-01-17 10:01:01 +01:00
renovate[bot] d4362ea5a8 Update dependency marked to v4.0.10 [SECURITY] (#44078)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-16 23:47:48 -08:00
ying-jeanne 7422789ec7 Remove Macaron ParamsInt64 function from code base (#43810)
* draft commit

* change all calls

* Compilation errors
2022-01-15 00:55:57 +08:00
ToTheMax bd8791aced Fixed broken links in documentation (#44044)
* Fixed broken link

* Fixed broken contribute documentation link

* Consistent relative contribute-folder url
2022-01-14 10:24:24 -05:00
Giordano Ricci 6b1321dbfa Elasticsearch: Fix QueryEditor styling issues (#44041) 2022-01-14 14:58:25 +00:00
Joker 3239c62a24 Explore: Support custom display label for exemplar links for Prometheus datasource (#42732)
* Add custom URL label, docs for prometheus exemplar
2022-01-14 14:52:00 +00:00
Giordano Ricci cb27c9cd6f Elasticsearch: Fix handling multiple datalinks for a single field (#44029) 2022-01-14 14:05:23 +00:00
Shirley 9f404daf9f Cloudwatch: Improve accessibility in metrics search and query builders (#43997)
* Add more aria labels on metrics search and query builders

* Use id for Input
2022-01-14 14:56:00 +01:00
Dimitris Sotirakis 9fc46b19e3 Update grabpl version to 2.8.4 (#44045) 2022-01-14 15:54:16 +02:00
Will Browne 7694fff0ef [WIP] Plugins: Refactoring backend initialization flow (#42247)
* refactoring store interface and init flow

* fix import

* fix linter

* refactor resource calling

* load with class

* re-order args

* fix tests

* fix linter

* remove old creator

* add custom config struct

* fix some tests

* cleanup

* fix linter

* add connect failure error

* remove unused err

* convert test over
2022-01-14 13:30:39 +01:00
Hugo Häggmark 7ffefc069f Variables: Handle variable cancellations better (#43987)
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: joshhunt <josh@trtr.co>
Co-authored-by: kay delaney <kay@grafana.com>
Co-authored-by: Alexandra Vargas <alexa1866@gmail.com>>
2022-01-14 11:19:42 +01:00
Gabriel MABILLE 11fa9801f2 AccessControl: Provisioning for teams (#43767)
* AccessControl: Provisioning for teams

* Docs: Add fixed role team assignment to full example

Co-authored-by: gamab <gabi.mabs@gmail.com>

Co-authored-by: Jguer <joao.guerreiro@grafana.com>
2022-01-14 10:28:06 +01:00
J Guerreiro 1e9818a69f Add usage stats preview endpoint (#43899)
* Stats: add preview route for usage statistics

* Stats: respect reporting settings

* Stats: add tests to api endpoint

* Stats: unregister route

* Stats: always possible to preview stats

* Update pkg/infra/usagestats/service/api.go

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2022-01-14 10:16:07 +01:00
Gábor Farkas bedc5cccaa prometheus: fix auto-inserting null-timestamps at the end (#44022) 2022-01-14 09:25:15 +01:00
Ryan McKinley f3dcfb2e3e Chore: update openlayers dependencies (#44019) 2022-01-13 22:32:13 -08:00
Ryan McKinley fd8baf5f7d Gazetteer: reactor so the source is a DataFrame (#43783) 2022-01-13 17:15:31 -08:00
Alexander Weaver c68eefd398 Alerting: Add abstraction layer and testing hooks in front of SMTP dialer (#43875)
* Add abstraction layer above SMTP communication

* Fix issues with attachments and sync command

* Tests for bad SMTP behavior

* Separate tests between async and sync entry points. Test difference between them

* Return interface so Wire can properly map types

* Address feedback from George
2022-01-13 15:19:15 -06:00
Yuriy Tseretyan 8114f6b065 Use stack trace context in XORM trace logger (#43780)
* add caller and stack Valuer functions
* Add WithPrefix and WithSuffix similar to what go-kit offers
* replace New with just `with`. Remove filter wrapper because the first argument of the context argument is not logger but additional context.
* update Xorm logger to use custom depth to display the datastore code instead of xorm
2022-01-13 13:30:28 -05:00
Nathan Marrs 54b120505e ValueMappings: support settings icons in field value mappings (#43942) 2022-01-13 10:06:40 -08:00
Emil Tullstedt 25736b6afb Auth: implement auto_sign_up for auth.jwt (#43502)
Co-authored-by: James Brown <jbrown@easypost.com>
2022-01-13 17:15:22 +01:00
Ashley Harrison 45287b4129 Button: Only set pointer-events: none; on disabled LinkButtons (#44006) 2022-01-13 15:58:21 +00:00
Connor Lindsey 17f7f0dc93 Tempo: Update service graph linked queries from totals to rates (#43866)
* Tempo: Update service graph linked queries from totals to rates

* Interpolate server name and interval
2022-01-13 16:28:20 +01:00
Gilles De Mey 55ec05b560 Alerting: remove dead code (#43956) 2022-01-13 16:23:49 +01:00
renovate[bot] 274abf53ba Add copy-webpack-plugin to ignore list for now (#41965)
* Update dependency copy-webpack-plugin to v10

* Ignore copy webpack plugin for now

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2022-01-13 14:58:26 +01:00
Ezequiel Victorero 13223140ad Disable server stats buttons when user doesn't have permissions to access those links (#43603) 2022-01-13 10:42:09 -03:00
Karl Persson f999910dc6 Access control: Add access control sql filter to org user queries (#43961)
* Add access control SQL filter to org user queries
2022-01-13 14:40:32 +01:00
Eric Leijonmarck ccd9e46dda changed route on the serviceaccounts endpoint (#43989)
* changed route on the serviceaccounts endpoint

* refactor: change to base url variable

* tests fixed
2022-01-13 14:15:43 +01:00
Agnès Toulet 14b92b75c7 Docs: Update SAML settings (#43271)
* Docs: Update SAML settings

* update to follow implementation change

* update example SAML configuration
2022-01-13 14:04:02 +01:00
Dimitris Sotirakis 787d55fb2d Update grabpl version to 2.8.3 - modify commands (#43996) 2022-01-13 13:57:15 +02:00
Andres Martinez Gotor 0a17048316 Allow to bypass modal focus trap (#43974) 2022-01-13 12:55:54 +01:00
Gábor Farkas 4a88b8f66c Prometheus: add tests covering the prometheus-response to dataframes conversion (#43892)
* prometheus: add tests covering prometheus_response to grafana_dataframes

* fixed variable name

* added comment

* removed not-helping function call
2022-01-13 11:52:50 +01:00
kay delaney 01dd623daa UI/Plot: Implement keyboard controls for plot cursor (#42244) 2022-01-13 10:14:55 +00:00
Ashley Harrison f74b21c119 Dependencies: downgrade typescript to 4.4.4 for now (#43970)
* Downgrade typescript to 4.5.2 for now

* Downgrade to 4.4.4 instead :(

* kick drone

* Update .github/renovate.json5

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2022-01-13 10:08:38 +00:00
Agnès Toulet a9dfd3a487 Docs: clean up image renderer dependencies and add ones for CentOS 8 (#41862)
* Docs: clean up image renderer dependencies and add ones for CentOS 8

* apply PR review feedback
2022-01-13 11:05:56 +01:00
Konrad Lalik c829535f14 Alerting: Fix the silence url's matcher parameters (#43898)
* Split silence matchers parameter into a separate entry for each label

* Unify the silence link creation

* Remove duplicated matchers when parsing to/from query params

* Add tests for matchers

* Add a comment with a duplication removal explanation

* Improve label duplication comment

* Remove redundant code

* Use uniqBy to simplify the code. Rename matchers parameter

* Fix Silence test data
2022-01-13 10:48:13 +01:00
Ashley Harrison 8f1468df6a only push default datasources to the list if they're not undefined (#43966) 2022-01-13 09:26:26 +00:00
renovate[bot] bf417be2e0 Update dependency sass to v1.48.0 (#43986)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-13 10:15:20 +01:00
Artur Wierzbicki e01ac44cfa Live: performance tests e2e part (#43915)
* #41993: live perf tests e2e part

* #41993: added bash upgrade instructions

* #41993: remove custom feature toggle

* #41993: fix typo in 'integrationFolder'
2022-01-12 22:15:29 +04:00
Dimitris Sotirakis 0c88b39162 Bug: Make e2e artifacts upload run at the end of the pipeline (#43962)
* Rename step

* Make e2e tests artifacts upload run even on failed e2e tests
2022-01-12 17:58:35 +02:00
Agnès Toulet 5eaaadd59d Tabs: add suffix prop for the tab name (#43869)
* Tabs: add suffix prop for the tab name

* Replace FC with JSX.Element
2022-01-12 15:37:16 +01:00
Shirley 105bf8fd94 Remove valid aggregation type check (#43955) 2022-01-12 15:36:56 +01:00
Victor Marin f881fd1637 Postgres/MySQL/MSSQL: Cancel in-flight SQL query if user cancels query in grafana (#43890) 2022-01-12 16:24:27 +02:00
Victor Marin f8b527b818 Build: Add MSSQL devenv for ARM64 processors (#43888)
* Build: Add MSSQL devenv for ARM64 processors

* Change docker image tag from latest to fixed version
2022-01-12 16:24:06 +02:00
Jeremy Price e894837b7e Accesscontrol: Remove service account creation code from addapikey (#43900)
* Remove service account creation code from addapikey
Co-authored-by: J Guerreiro <joao.guerreiro@grafana.com>
2022-01-12 15:18:57 +01:00
Eric Leijonmarck 6409e761b5 List serviceaccounts (#43672)
* Serviceaccounts: feat - tabview for serviceaccounts

* WIP

* feat: listing all service accounts

* refactor: needed to remove showInvitees as not present in serviceaccounts

* add token column in the list

* add token to orgserviceaccount

* Update pkg/services/serviceaccounts/api/api.go
2022-01-12 13:23:00 +01:00
Marcus Efraimsson c1a9a36bd2 Chore: Add PR Check action enforcing backport decision (#43916)
Ref https://github.com/grafana/grafana-github-actions/pull/53
Ref https://github.com/grafana/grafana-release/issues/60
2022-01-12 13:09:25 +01:00
King Muji 48ea36630d fix: typo (#43948) 2022-01-12 14:03:56 +02:00
Dimitris Sotirakis 634ce4a98e Update grabpl version to 2.8.2 (#43949) 2022-01-12 13:07:29 +02:00
Hugo Häggmark 7f8f9eb814 Variables: Fix so data source variables are added to adhoc configuration (#43881) 2022-01-12 12:05:42 +01:00
renovate[bot] 0fd8f5de44 Update dependency webpack to v5.66.0 (#43944)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-12 11:28:25 +01:00
Giordano Ricci afd110309c Elasticsearch: fix a11y issues in datasource settings (#43706) 2022-01-12 09:19:10 +00:00
Ivana Huckova c8ef541c02 Name fields based on targets length (#43832) 2022-01-12 10:13:52 +01:00
Ryan McKinley 7e5e3f9dc0 FeatureToggles: typed as optional booleans (#43925) 2022-01-11 16:18:54 -08:00
Alexander Weaver 59bda131ec Alerting: [Docs] Clarifications regarding what's supported in alerting message templates (#43544)
* Clarify docs for alerting templates

* Fix template cross-reference

* Add a single missing delimiter

* Update docs/sources/alerting/unified-alerting/message-templating/_index.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/alerting/unified-alerting/message-templating/_index.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/alerting/unified-alerting/message-templating/_index.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/alerting/unified-alerting/message-templating/_index.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Address various points of docs feedback

* Update docs/sources/alerting/unified-alerting/message-templating/_index.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/alerting/unified-alerting/message-templating/_index.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/alerting/unified-alerting/message-templating/_index.md

Co-authored-by: Yuriy Tseretyan <tceretian@gmail.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
Co-authored-by: Yuriy Tseretyan <tceretian@gmail.com>
2022-01-11 14:16:04 -06:00
Dimitris Sotirakis ee0a30c8c2 Update grabpl version to 2.8.1 (#43902) 2022-01-11 20:53:40 +02:00
Karl Persson e2de1c1ec4 Service Accounts: Fix issue in UserTable and ServiceAccountsTable (#43865)
* fix issue where ServiceAccountsTable rendere delete modal
for every item in list

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2022-01-11 18:51:24 +01:00
Ashley Harrison 1966eba796 Chore: Add some e2e tests for repeating behaviour (#43457)
* user essentials mob! 🔱

* user essentials mob! 🔱

* WIP: Mob session work 🚧 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* mob next [ci-skip] [ci skip] [skip ci]

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* :construction:: Mob session work 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* Move repeats suite under dashboard suite

* remove these generated files

* move repeats-suite into dashboards-suite

* Reexport dashboard jsons from play and update them

* :construction:: Mob session work 🔱

* :construction:: Mob session work 🔱

* Rename dashboards to work with stripnulls

* Run stripnulls

* Add repeat to row schema

* Clean up the rest of the repeating dashboards

* Fix tooltip sorting

* Update older dashboards

* Update golden files so tests pass

* format this to ensure consistent tabs/spaces

* undo whitespace changes

* Update scripts/stripnulls.sh

Co-authored-by: sam boyer <sam.boyer@grafana.com>

* update schema versions and test

Co-authored-by: thisisobate <obasiuche62@gmail.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
Co-authored-by: joshhunt <josh@trtr.co>
Co-authored-by: kay delaney <kay@grafana.com>
Co-authored-by: Alexandra Vargas <alexa1866@gmail.com>
Co-authored-by: sam boyer <sam.boyer@grafana.com>
2022-01-11 16:47:30 +00:00
Josh Hunt 7ea951b35d Chore: Use ReactNode type for Field error prop (#43852)
* Chore: Use ReactNode type for Field error prop

* add LoadingPlaceholder
2022-01-11 16:45:14 +00: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
Yuriy Tseretyan ed5c664e4a Alerting: Stop firing of alert when it is updated (#39975)
* Update API to call the scheduler to remove\update an alert rule. When a rule is updated by a user, the scheduler will remove the currently firing alert instances and clean up the state cache. 
* Update evaluation loop in the scheduler to support one more channel that is used to communicate updates to it.
* Improved rule deletion from the internal registry. 
* Move alert rule version from the internal registry (structure alertRuleInfo) closer rule evaluation loop (to evaluation task structure), which will make the registry values immutable.
* Extract notification code to a separate function to reuse in update flow.
2022-01-11 11:39:34 -05:00
Marcus Efraimsson f6414ea2b2 CodeQL: Try to fix uncontrolled data used in path expression (#43462)
Ref #43080
2022-01-11 17:37:58 +01:00
Dominik Prokop 2a766c6a04 UsersTable: Render remove modal only once (#43885)
* UsersTable: Render remove modal only once

* Formatting cleanup

* Snaps update
2022-01-11 16:27:48 +01:00
renovate[bot] e4140065d2 Update dependency html-loader to v3.1.0 (#43829)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-11 15:19:43 +00:00
renovate[bot] a8116a92e3 Update dependency http-server to v14.1.0 (#43873)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-11 15:19:06 +00:00
renovate[bot] b4564770bf Update dependency eslint-plugin-jsdoc to v37.6.1 (#43831)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-11 15:14:31 +00:00
Andreas Fitzek 58408f31ab Fix typo in contact-points documentation (#43883)
Fixes a typo in contact-points documentation, `mesasges` => `messages`
2022-01-11 09:33:37 -05:00
Dimitris Sotirakis 4f47832bac CI: Automate Grafana releases (#43897)
* CI: Automate releases

* Update grabpl version
2022-01-11 16:28:29 +02:00
Karl Persson 8271bc73f9 Update docs for ds permissions access control permisisons (#43346) 2022-01-11 14:52:33 +01:00
lean.dev 79bf0fc3d1 Fixing login request in loadtest (#43750) 2022-01-11 10:35:02 -03:00
Andrej Ocenas 8b45eb1161 TraceView: Refactor theming to use Grafana theme directly (#43856)
* Use grafana theme and utils

* Use grafana colors

* Fix tests

* Use useStyles2
2022-01-11 13:34:39 +01:00
dependabot[bot] 44cca3e4c1 Bump actions/setup-node from 2.4.1 to 2.5.1 (#43570)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.4.1 to 2.5.1.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v2.4.1...v2.5.1)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-11 12:15:50 +01:00
dependabot[bot] 6435222d82 Bump actions/cache from 2.1.6 to 2.1.7 (#42176)
Bumps [actions/cache](https://github.com/actions/cache) from 2.1.6 to 2.1.7.
- [Release notes](https://github.com/actions/cache/releases)
- [Commits](https://github.com/actions/cache/compare/v2.1.6...v2.1.7)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-11 12:14:37 +01:00
Ieva a06564fb0d Access control: allow granting a fixed role dynamically based on the startup settings (#43867)
* allow granting a fixed role dynamically depending on startup config

* move role definition for team writing

* undo test changes

* nicer naming
2022-01-11 11:58:40 +01:00
Dimitris Sotirakis f60a2e8152 Chore: Split release pipelines (#43419)
* Split release pipelines

* Re-add pr and main pipelines
2022-01-11 09:17:00 +00:00
Peter Holmberg fc037e1798 Alerting: Add delete to rule edit (#43673) 2022-01-11 09:46:21 +01:00
Artur Wierzbicki 3ca3b7f432 fix query over live error - getQueryData should wait for centrifuge to initialize (#43880) 2022-01-11 10:07:08 +04:00
Ryan McKinley 6b70e1af76 BarChart: show x tick picker (#43510) 2022-01-11 00:12:33 +01:00
Isabella Siu 5e7804f466 CloudMonitoring: separate out google auth docs (#43481)
* CloudMonitoring: separate out google auth docs

* Apply suggestions from code review

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* docs team changes

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2022-01-10 16:44:38 -05:00
Ieva 41b709d08d Access control: permissions for team creation (#43506)
* FGAC for team creation

* tests

* fix snapshot for UI tests

* linting

* update snapshots

* Remove unecessary class and update tests

Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>

* Make the condition slightly easier

Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>

Co-authored-by: gamab <gabi.mabs@gmail.com>
2022-01-10 17:05:53 +00:00
Katarina Yang 5bab02c7ef Refactor: Change sqlstore.inTransaction to SQLStore.WithTransactional… (#43823)
* Refactor: Change sqlstore.inTransaction to SQLStore.WithTransactionalDBSession in user files

* update milesone
2022-01-10 11:28:41 -05:00
Ryan McKinley b404aae9c3 Crawler: use existing render service to generate dashboard thumbnails (#43515)
Co-authored-by: Artur Wierzbicki <artur@arturwierzbicki.com>
2022-01-10 08:21:35 -08:00
kay delaney cc9e70be5c Tags: Make Tags component more a11y-friendly (#43808) 2022-01-10 15:41:19 +00:00
renovate[bot] d1a94c1fa2 Update dependency react-dropzone to v11.5.1 (#43844)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-10 16:36:02 +01:00
Connor Lindsey ef12028a68 Tempo: Add time range to tempo search query behind a feature flag (#43811) 2022-01-10 07:38:40 -07:00
Connor Lindsey 3d6e9076c9 Tempo: Provide tag value completion items consistently (#43773) 2022-01-10 07:37:35 -07:00
Marcus Olsson 2b967c4c55 Add plugin publishing and signing criteria (#40154) 2022-01-10 15:32:11 +01:00
Ashley Harrison 77347a37b1 Add tests to ensure infinite value mappings work (#43858) 2022-01-10 14:16:07 +00:00
Karl Persson d350ed0f35 Access Control: SQL filter (#43560)
* Add the accesscontrol sql filter utility

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2022-01-10 14:26:57 +01:00
Andrej Ocenas dcd4e74c54 Explore: Don't change query status to Done if there was Error (#43850) 2022-01-10 13:44:51 +01:00
Marcus Olsson 1141df7b9b Update Add support for annotations (#43851) 2022-01-10 13:35:09 +01:00
Gilles De Mey 7b841c7947 Alerting: run validation before testing contact point (#43721) 2022-01-10 13:28:36 +01:00
Gilles De Mey be61f192c8 Alerting: add support for absolute URLs in ActionIcon (#43367) 2022-01-10 13:11:43 +01:00
Karl Persson 0003bf7cc2 AzureAD OAuth: Add support for fetching user groups (#43470)
* Add functionallity to extractGroups to handle groups-overage claims
Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2022-01-10 11:50:10 +01:00
Andres Martinez Gotor de4ac8ae59 AzureMonitor: Filter list of resources by resourceType (#43522) 2022-01-10 11:22:06 +01:00
Dominik Prokop 1a0f5595c3 TimeSeries/BarChart: Add support for sorting series in the tooltip (#43615)
* TimeSeries panel: Add support for sorting series in the tooltip

* Fix cue tests

* Make sortValues work with string values

* Sort values in DatHoverView and remove sort index from TooltipPlugin

* Rename sortOrder prop to sort

* DataHoverView - use raw values for sorting
2022-01-10 10:32:21 +01:00
Dominik Prokop 4b814dbcea TimeSeries: Separate field unit config for axis ticks and other display means when stacking by percent (#43713) 2022-01-10 01:18:56 -08:00
renovate[bot] 737bc35219 Update dependency sass to v1.47.0 (#43825)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-10 10:12:17 +01:00
Sofia Papagiannaki e25613a360 Update CODEOWNERS for SQL data sources (#43456) 2022-01-10 10:03:44 +01:00
Hugo Häggmark 9d11c9153f Variables: Fix for flickering repeat panels (#43447)
* Variables: Fix for flickering repeat panels

* Refactor: updates after PR comments
2022-01-10 06:41:18 +01:00
Dan Cech 34f757ba5a switch to using featureEnabled for enterprise features (#41559)
* switch to using featureEnabled for enterprise features
2022-01-07 15:11:23 -05:00
Travis Patterson 9eb82f9fff Propagate all headers (#43812)
* Propagate all headers

* stable header order
2022-01-07 12:45:26 -07:00
Ryan McKinley 546818819b Loki: use queryType rather than range|instant flags (#43727) 2022-01-07 10:00:11 -08:00
Nathan Rodman 0dd88d9480 only show datasources that support alerting in query editor (#43776) 2022-01-07 09:27:20 -08:00
Ryan McKinley 8cf63a9d44 Chore: convert settings page to function component (#43731) 2022-01-07 17:59:14 +01:00
Katarina Yang a30ca86084 Refactor: Change sqlstore.inTransaction to SQLStore.WithTransactional… (#43772)
* Refactor: Change sqlstore.inTransaction to SQLStore.WithTransactionalDBSession in dashboard

* Fix: Fix failing lint and BE tests
2022-01-07 17:50:59 +01:00
renovate[bot] a29ddfd386 Update Monthly patch updates (#43798)
* Update Monthly patch updates

* remove lodash and mousetrap type updates

* Remove slate types upgrade

* Update storybook versions in yarnrc

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-01-07 16:33:26 +00:00
idafurjes 3ca58c0e0c Chore: Upgrade go and alpine (#43801)
* Upgrade go and alpine

* Bump grabpl version

* Bump alpine version

* Fix version of grabpl

* Bump alpine version

* Bump alpine in Dockerfiles
2022-01-07 17:27:22 +01:00
David a08e0581de Hotkeys: Make time range permanent (#43802)
Typing `t a` in Explore or Dashboards will turn a relative time like "Last 1 hour"
into an absolute range to make the URL permanent, so that when sharing it others
will see the same data.

- registered `t a` in key service
- new `AbsoluteTimeEvent` dispatch via global event bus
- dashboard times handled in TimeSrv
- Explore times handled in Explore.tsx and Explore's time reducer

I could not find an easy way to combine time handling for Exlore and Dashboard in one place.
2022-01-07 16:51:29 +01:00
Dimitris Sotirakis 79d10c6903 Add packages:publishPrevious command (#43800) 2022-01-07 16:19:58 +02:00
machinly 36626554be Prometheus: annotation: fix only first frame was process error & typo. (#43486) 2022-01-07 15:04:30 +01:00
Sebastião Beirão 720d2487fa Units: Fixed VAr (Volt-Ampere reactive), VA and kVA capitalization (#43779)
* Fixed VAr unit casing

* Fixed VAr unit casing

* Fixed VAr unit casing

* Fixed categories.ts file extension

* Fixed VA and kVA capitalization

* Fixed VA, kVA and kVAr capitalization.
2022-01-07 13:56:55 +00:00
kay delaney 36e4a871f2 UI/ClipboardButton: Remove ClipboardJS in favor of native Clipboard API (#42996)
* UI/ClipboardButton: Remove ClipboardJS in favor of native Clipboard API
Closes #42365

* Add backwards compatibility
2022-01-07 13:41:09 +00:00
idafurjes 4eacdf5f9e Upgrade go version to 1.17.6 (#43797) 2022-01-07 14:09:19 +01:00
Joan López de la Franca Beltran 532e71554f Usage Stats: Add metrics to count enabled kms providers per kind (#43640)
* Usage Insights: Add metrics to count enabled kms providers per kind

* Add backwards compatibility
2022-01-07 13:52:28 +01:00
Timur Olzhabayev e2dcfbf916 docs(static): add plugin submission how-to (#43576) 2022-01-07 13:43:41 +01:00
Selene 32ed680fc2 Team Guardian: Refactor it to remove the bus dependency (#43058)
* Refactor team guardian to avoid to use bus

* Fix lint

* Fix lint
2022-01-07 13:38:00 +01:00
Ashley Harrison f2336fd981 Need to add a group name to ensure they're batched correctly (#43796) 2022-01-07 12:32:09 +00:00
Emil Tullstedt fdd196a627 Datemath: Remove unused functions (#43665) 2022-01-07 12:53:31 +01:00
Ashley Harrison 1fe098ecd2 Enable patch updates in renovate (#43795) 2022-01-07 11:27:23 +00:00
renovate[bot] f074ab8774 Update typescript-eslint monorepo to v5.9.0 (#43793)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-07 10:43:13 +00:00
renovate[bot] 125438946f Update sentry-javascript monorepo to v6.16.1 (#43792)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-07 10:37:59 +00:00
renovate[bot] d1c2b1c500 Update react monorepo (#43787)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-07 10:09:54 +00:00
renovate[bot] 38f7dd2714 Update dependency prismjs to v1.26.0 (#43785)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-07 10:00:53 +00:00
Zoltán Bedi 85246d7179 Postgres: Fix test datasource always returns success (#43762) 2022-01-07 10:39:25 +01:00
Nicholas Bowman 20574c130a PostgreSQL: include numeric column type in Query Builder metaquery (#43445)
* Plugins: Change the PostgreSQL plugin to include more column types in Query Builder metaquery

Originally, the metaquery used in the PostgreSQL plugin to populate the
column dropdown menu in the Query Builder UI only included integer- and real-typed
columns. This change expands the list of acceptable types for plotting to
include numeric columns, boolean columns, and textual columns, as all are
types that could feasibly be desired to plot in a panel.

* Update types tracked in meta query builder

Removed the `boolean` and `text` types, but retained addition of `numeric` type as part of time series query builder.
2022-01-07 10:32:46 +01:00
Torkel Ödegaard 5b02e8a666 Table: Fixes issue with field config applied to wrong fields when hiding columns (#43376)
* Table: Fixes issue with field config applied to wrong fields when hiding columns

* Minor refactoring

* Fixing comment

* Rename to field

* Forgot to save test file
2022-01-07 10:32:04 +01:00
Dimitris Sotirakis beba5958a4 Remove duplication (#43694) 2022-01-07 11:23:17 +02:00
renovate[bot] 7917c04883 Update emotion monorepo (#43768)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-07 09:21:04 +00:00
renovate[bot] 3c28bd9fa2 Update dependency whatwg-fetch to v3.6.2 (#43764)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-07 09:19:06 +00:00
renovate[bot] 3d98981bfb Update dependency webpack-dev-server to v4.7.2 (#43763)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-07 09:18:30 +00:00
kay delaney e7f1e11229 Modal: Fix restore focus behavior (#43749)
* Modal: Fix restore focus behavior

* Use OverlayContainer

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-01-07 09:00:55 +00:00
Timur Olzhabayev 8717bc7ef4 fix(40639): datasource should not be visible after uninstall (#43625)
* fix(40639): datasource should not be visible after uninstall
2022-01-07 09:54:02 +01:00
Yuriy Tseretyan ea478dec22 Alerting: Remove bridge between log15 and go-kit logger (#43769)
* remove bridge between log15 and go-kit logger.

* fix tests
2022-01-07 09:40:09 +01:00
MaukWM faca526c16 Fixed incorrect link to text panel page (#43757)
"Text panel" was linking to the "alert list panel" page: (https://grafana.com/docs/grafana/latest/visualizations/alert-list-panel/). This change should map it to the correct page now (https://grafana.com/docs/grafana/latest/visualizations/text-panel/).

Co-authored-by: achatterjee-grafana <aparajita.chatterjee@grafana.com>
2022-01-06 15:15:44 -05:00
Ryan McKinley 964dae9872 Open Chore: remove graph(NG) from storybook (#43735) 2022-01-06 09:30:04 -08:00
Katarina Yang 7f8daa0eae Refactor: Change sqlstore.inTransaction to .WithTransactionalDBSession (#43245)
* Refactor: Change sqlstore.inTransaction(...) to SQLStore.WithTransactionalDBSession(...) in alert_notification.go

* Chore: Fix BE lint err

* fix: fix failing sqlstore nil error

* chore: remove unecessary setup()

* fix: use appropriate ctx
2022-01-06 18:21:39 +01:00
renovate[bot] 846c6ce758 Update dependency typescript to v4.5.4 (#43756)
* Update dependency typescript to v4.5.4

* Changes needed to support new TypeScript version

* kick drone

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-01-06 16:16:13 +00:00
kay delaney 890c43adf1 UI/Card: Refactor Card component for improved accessibility (#41890)
* UI/Card: Improve accessibility of Card component

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2022-01-06 15:48:12 +00:00
renovate[bot] d55d2d3da7 Update dependency webpack to v5.65.0 (#43761)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-06 15:26:35 +00:00
renovate[bot] c2859b16fc Update dependency underscore to v1.13.2 (#43760)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-06 15:22:25 +00:00
renovate[bot] bb7df6eb77 Update dependency ts-jest to v27.1.2 (#43755)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-06 14:43:23 +00:00
ying-jeanne a8eef45a44 Logger migration from log15 to gokit/log (#41636)
* migrate log15 to gokit/log

* fix console log

* update some unittest

* fix all unittest

* fix the build

* Update pkg/infra/log/log.go

Co-authored-by: Yuriy Tseretyan <tceretian@gmail.com>

* general type vector

* correct the level key

Co-authored-by: Yuriy Tseretyan <tceretian@gmail.com>
2022-01-06 22:28:05 +08:00
Travis Patterson 8898a5f0a0 Add record-audio icon for recorded queries (#43734)
* Add record-audio icon for recorded queries

* add record-audio icon to iconBundle

Co-authored-by: Todd Treece <todd.treece@grafana.com>
2022-01-06 07:15:50 -07:00
Connor Lindsey 1a7567d8c7 Tempo: Filter available service graph filter values to most relevant options (#43728)
* Restrict service graph filter tag values to labels from service graph metrics
2022-01-06 07:09:31 -07:00
renovate[bot] cb34c47123 Update dependency testing-library-selector to v0.2.1 (#43752)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-06 13:55:47 +00:00
Giordano Ricci 0013eb3555 Input: Fix margins when not using prefix/suffix (#43726) 2022-01-06 14:27:27 +01:00
kay delaney c8e7368ea6 ColorPicker: Makes tab order left to right (#43745) 2022-01-06 13:19:42 +00:00
renovate[bot] 9dfbab2e03 Update dependency terser-webpack-plugin to v5.3.0 (#43751)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-06 13:13:17 +00:00
Ashley Harrison 6a558582d5 Fix deprecated sass (#43753) 2022-01-06 13:09:52 +00:00
renovate[bot] 2550baba3e Update linguijs monorepo to v3.13.0 (#43748)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-06 12:22:25 +00:00
renovate[bot] 58f3a7764d Update dependency stylelint to v14.2.0 (#43747)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-06 12:01:33 +00:00
Uchechukwu Obasi c28f913168 TimePicker: fixes focus to restore when closing calendar on narrow screen (#43746) 2022-01-06 12:28:09 +01:00
renovate[bot] c47d33f4b7 Update dependency search-query-parser to v1.6.0 (#43741)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-06 11:23:08 +00:00
renovate[bot] 3261772a15 Update dependency sass to v1.46.0 (#43740)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-06 11:22:47 +00:00
Levente Balogh aeddfb0506 Github Actions: another fix for the levitate workflow (#43742)
* fix: add col number to the link to work correctly

If we don't provide the position in a #step:{line}:{column} format
then the Github UI won't take us to the correct step.

* fix: escape the backtick ("`") characters properly
2022-01-06 12:02:45 +01:00
J Guerreiro 6bbf85e2e9 AccessControl: verify metadata map is not null (#43743) 2022-01-06 11:54:51 +01:00
Ashley Harrison c87b048af8 Login: Prevent page overflowing on mobile (#43739) 2022-01-06 10:34:13 +00:00
renovate[bot] fdc054c0a4 Update dependency sass-loader to v12.4.0 (#43725)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-06 10:33:54 +00:00
renovate[bot] b735296524 Update dependency reselect to v4.1.5 (#43709)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-06 10:10:36 +00:00
renovate[bot] 34cfcbb33a Update dependency @rushstack/node-core-library to v3.45.0 (#43724)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-06 10:07:44 +00:00
Travis Patterson 20b3b2a448 Forward oauth tokens after prometheus datasource migration (#43686)
* create the prom client

* implement lru cache of prometheus clients based on auth headers

* linter
2022-01-05 13:55:55 -07:00
Andrej Ocenas 88d17c4998 Tempo: Don't show error when running query without traceId (#43676)
* Check for traceId and return EMPTY observable if no value

* Make sure we change status on complete

* Add tests

* Fix test
2022-01-05 19:34:09 +01:00
Piotr Jamróz bac9253fdc A11y: Fix a11y issues in OpenTSDB (#43714)
* Fix a11y issues in OpenTSDB configuration page

* Fix a11y issues in OpenTSDB editor

* Link labels to inputs where possible

Co-authored-by: kay delaney <kay@grafana.com>
2022-01-05 19:28:28 +01:00
Nathan Rodman 825edddfb6 Alerting: UI for mute timings (#41578)
* wip: add form inputs for creating mute timing

* form for mute timings

* add action for submitting config

* fix bug in payload

* add table for viewing mute timings

* remove mute timing from routes when deleted

* attach mute timing to route

* edit a mute timing

* use field array for multiple intervals

* Add confirmation modal for deleting mute timing

* add default values to form inputs

* fetch am config prior to renderring form

* validation for mute timing fields

* fix tests

* tests for mute timing form

* small ui fixes for the form and table

* pass mute name as query param

* make time fields inline

* fix validation for an existing alert and overwrite on edit

* rename mute timing in routes on edit

* fix validation for time inputs

* make time interval its own component

* add descriptions for mute timings

* refactor time interval parsing functions

* fix linting and tests

* refactor makeAmLink

* docs for mute timings

* reorganize docs and add intro for mute timings

* doc review edits

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* run prettier

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2022-01-05 10:16:43 -08:00
Ryan McKinley e77b4abcc8 StreamingDataFrame: support legend format and prometheus style labels (#43637) 2022-01-05 08:56:23 -08:00
renovate[bot] b07bd55343 Update dependency sass to v1.45.2 (#43719)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-05 16:39:32 +00:00
Gabriel MABILLE 92c568e9f7 AccessControl: Remove unused error from GetResourcesMetadata (#43710)
* AccessControl: Remove unused error from GetResourcesMetadata

Co-authored-by: J Guerreiro <joao.guerreiro@grafana.com>
2022-01-05 17:24:14 +01:00
Alexander Emelin b4204628e4 Live: optionally send queries over websocket connection (#41653)
Co-authored-by: ArturWierzbicki <artur.wierzbicki@grafana.com>
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2022-01-05 08:02:12 -08:00
renovate[bot] bfecbdc0bd Update dependency rxjs to v7.5.1 (#43718)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-05 15:53:40 +00:00
Alexander Weaver fd583a0e3b Alerting: Allow customization of Google chat message (#43568)
* Allow customizable googlechat message via optional setting

* Add optional message field in googlechat contact point configurator

* Fix strange error message on send if template fails to fully evaluate

* Elevate template evaluation failure logs to Warn level

* Extract default.title template embed from all channels to shared constant
2022-01-05 09:47:08 -06:00
Ashley Harrison b826804ef7 Hide previews behind toggle properly (#43704) 2022-01-05 15:28:03 +00:00
renovate[bot] 9e5a7b056c Update dependency rollup to v2.63.0 (#43711)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-05 14:58:56 +00:00
renovate[bot] 369a940f85 Update dependency redux-thunk to v2.4.1 (#43708)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-05 14:41:02 +00:00
Eric Leijonmarck 0aa905bb1f Serviceaccounts: feat - tabview for serviceaccounts (#43573) 2022-01-05 15:32:38 +01:00
Torkel Ödegaard 5c88acd5aa ImportDashboard: Fixes issue with importing dashboard and name ending up in uid (#43451)
* ImportDashboard: Fixes issue with importing dashboard and name ending up in uid

* Added unit test

* fixing import issue
2022-01-05 15:20:32 +01:00
renovate[bot] 64248edbb0 Update dependency recompose to v0.30.0 (#43705)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-05 14:00:08 +00:00
renovate[bot] 9280894e8c Update dependency react-use to v17.3.2 (#43702)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-05 13:52:54 +00:00
renovate[bot] e49177b338 Update dependency react-moveable to v0.30.3 (#43674)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-05 13:51:38 +00:00
renovate[bot] e236c6942b Update dependency moveable to v0.27.3 (#43365)
* Update dependency moveable to v0.27.3

* Update yarnrc

* can remove react-simple-compat now

* update yarnrc

* commit lockfile change

* add react-simple-compat to react-compat-moveable

* lockfile changes...

* add react-simple-compat resolution

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-01-05 13:06:27 +00:00
Uchechukwu Obasi 62d44fcffc InfoTooltip: refactor component to be accessible (#43613)
* InfoTooltip: refactor component to be accessible

* new: create ghostMode prop to allow turning on/off button styles

* update infoToolTip component to use ghostMode prop

* update story to show ghostMode state

* fix condition to work properly

* nit fix

* revert changes to former infoTooltip state

* InfoTooltip: use iconButton instead to achieve keyboard a11y

* fix minor type nit
2022-01-05 13:36:13 +01:00
renovate[bot] 8dc4c23a89 Update dependency jquery to v3.6.0 (#43348)
* Update dependency jquery to v3.6.0

* Handle type changes

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-01-05 11:08:13 +00:00
Ivana Huckova d7d6c10664 Prometheus: Fill missing steps with null values (#43622)
* Prometheus: Add empty points when data points missing

* Remove newline

* Add comments

* Improve/Fix test

* Remove unused variable
2022-01-05 11:40:32 +01:00
Dimitris Sotirakis 3625c617fa Add packages:publishTest command (#43696) 2022-01-05 10:53:46 +01:00
MeetzhDing 9c67ce77d8 Transformations: groupBy transformation now preserves data order (#43584)
* fix: groupBy transformers keep the order of numeric keys

* fix: groupBy transformers keep the order of numeric keys
2022-01-05 09:49:15 +00:00
Oscar Kilhed 1d20c82c7b PieChart: Respect percent labels and legends decimal setting (#43693) 2022-01-05 10:24:43 +01:00
Gilles De Mey 837925390f fix: pass OrgId to alertNotification model (#43678)
fixes #43214
2022-01-05 10:19:45 +01:00
J Guerreiro 056e143664 AccessControl: Present user edit actions according to AC metadata (#43602)
* AccessControl: Add user metadata to user detail view

* AccessControl: Do not present delete or disable buttons based on ac metadata in admin/users

* AccessControl: do not allow password changing or user editing without permission

* AccessControl: Fetch global:users scope for admin

* AccessControl: optimize org.user metadata fetch

* Chore: early return if ac metadata is not available
2022-01-05 09:59:17 +01:00
Shirley ba58b34219 CloudWatch: a11y: Add missing aria labels on explore metrics/logs editor (#43580)
* CloudWatch: a11y: Add missing aria labels on explore metrics/logs editor
2022-01-05 09:46:05 +01:00
achatterjee-grafana a9ad7d3c03 Add note for Cloud users. (#43689) 2022-01-04 17:20:42 -05:00
Christopher Moyer e1ad692cb3 docs: contributing updates (#41836)
* contributing updates first draft

* ran yarn prettier

* updated links

* removed test xref

* Update contribute/documentation/README.md

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>

Co-authored-by: Fiona Artiaga <89225282+GrafanaWriter@users.noreply.github.com>
2022-01-04 16:14:32 -05:00
kay delaney e4c84003fb Docs: Add info about yarn pnp to developer guide (#43653)
* Docs: Add info about yarn pnp to developer guide

* Add missing space
2022-01-04 17:11:56 +00:00
Ryan McKinley b09d498484 Import: fix dashboard imports with expressions (#43630) 2022-01-04 08:42:18 -08:00
Christopher Moyer 238345b62d docs: aws marketplace license activation (#43466)
* initial draft

* role creation prereq

* separate ecs and eks docs

* update ECS steps

* reword ecs instructions

* spacing

* remove spaces to make a hyperlink work

* added aws marketplace content

* update enterprise configuration

* add detail to deploy outside of aws

* improve outside of aws config

* minor addition

* update region syntax

* Update docs/sources/enterprise/license/_index.md

* typo

* Update EKS docs with detailed instructions

* Add task to setup ECS for high-availability

* Fix AWS_REGION environment variable

* final review and changes

* section landing page tweak

* Update docs/sources/enterprise/license/activate-aws-marketplace-license/about-ge-license-through-aws.md

Co-authored-by: Guilherme Caulada <guilherme.caulada@grafana.com>

* fixed links, changed db parameters to placeholder values

* copy edits

* copy updates

* Fix typos pointed out by codespell

* Fix prettier issue on EKS documentation

Co-authored-by: Mitchel Seaman <mitchel.seaman@gmail.com>
Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>
Co-authored-by: Guilherme Caulada <guilherme.caulada@grafana.com>
2022-01-04 09:22:33 -07:00
Uchechukwu Obasi 8aa496dfb4 BarGuage: Fixes vertical view flip and bar misalignment when used with datalinks (#43655)
* BarGauge: fix vertical view flip issue

* fix bar misalignment in vertical and horizontal orientations

* add test to prevent bar misalignment in the future
2022-01-04 17:21:29 +01:00
Ashley Harrison c509c32091 Remove height/width to fix safari issue (#43668) 2022-01-04 15:55:34 +00:00
Connor Lindsey 2aad6e57c0 NodeGraph: Fix empty state to display 'No Data' message (#43633)
* Fix "0" when no nodes present in NodeGraph

* Show no data message in NodeGraph

* Fix tests
2022-01-04 08:45:00 -07:00
renovate[bot] c302552714 Update dependency react-colorful to v5.5.1 (#43657)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-04 15:14:25 +00:00
Jure Stepišnik 71b7df09fc fix(time series): first point in a series can show context menu on click (#43344) 2022-01-04 11:49:07 -03:00
Jeremy Price 42ccc44eca Accesscontrol: Apply FGAC to APIKey endpoints (#42659)
* Move definitions to serviceaccounts

* Use constant names, add scope to delete

* Add descriptions to roles

* Rename roles
2022-01-04 15:37:40 +01:00
renovate[bot] 6264bc966f Update dependency react-grid-layout to v1.3.0 (#43666)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-04 14:35:45 +00:00
Dimitris Sotirakis 6926cb3060 Remove cypress cache volumes (#43667) 2022-01-04 16:28:06 +02:00
Connor Lindsey dc92cee874 Tempo: Fix Otel span kind mapping in trace upload resultTransformer (#43168)
* Fix otel span kind mapping

* Parse span kind from enum string
2022-01-04 07:25:14 -07:00
Travis Patterson c4c05a5b71 refactor promethueus package into sub packages (#43634) 2022-01-04 07:22:33 -07:00
renovate[bot] 567e2b5fd8 Update dependency react-dropzone to v11.4.2 (#43660)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-04 13:20:09 +00:00
Dimitris Sotirakis e3baa24946 CI: Remove initialize step from integration tests pipeline (#43663)
* Remove initialize step from integration tests

* Remove initialize step from integration tests on main pipelines
2022-01-04 14:17:20 +01:00
Emil Tullstedt df4e9ca12b Datemath: Support fiscal years (#43558) 2022-01-04 13:56:34 +01:00
Levente Balogh ef35fd4069 Github Actions: another fix for the levitate workflow (#43659)
* chore: link to the actual workflow step

* chore: make the "Detect" workflow fail if there were any breaking changes

* chore: stop making the reporting workflow fail on breaking changes

* fix: fix typo (`mesage` -> `message`)
2022-01-04 13:54:38 +01:00
Karl Persson 2425828a0b quote reserved keyword (#43652) 2022-01-04 13:35:52 +01:00
renovate[bot] 143517bf1b Update dependency prop-types to v15.8.0 (#43656)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-04 12:28:02 +00:00
Selene bdbd199910 Remove unnecesary joins from queries (#43626) 2022-01-04 13:04:02 +01:00
renovate[bot] 8ee53347bf Update dependency eslint-plugin-jsdoc to v37.5.1 (#43650)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-04 11:23:17 +00:00
Karl Persson ee690a7bb0 Add org_id in join (#43648) 2022-01-04 11:13:45 +01:00
Levente Balogh 00c356f55f fix: checkout the repo to have the helper scripts available (#43646) 2022-01-04 11:08:08 +01:00
renovate[bot] 0ad440069f Update dependency @types/jest to v27.4.0 (#43643)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-04 10:06:17 +00:00
renovate[bot] 8fcab78b33 Update dependency date-fns to v2.28.0 (#43645)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-04 10:05:22 +00:00
renovate[bot] 205d3e5c3a Update dependency eslint-plugin-react to v7.28.0 (#43496)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-04 09:28:00 +00:00
renovate[bot] d411fcb228 Update dependency rc-slider to v9.7.5 (#43474)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-04 09:25:19 +00:00
Levente Balogh 1e3cf75862 Github Actions: update the reporting for the levitate workflow (#43621)
* chore: stop checking out the repo and use the `unzip` command

* refactor: remove deprecated workflow script

* refactor: add whitespace around template variable
2022-01-04 10:23:28 +01:00
renovate[bot] c4dd772422 Update dependency postcss-loader to v6.2.1 (#43464)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-01-04 09:19:26 +00:00
Torkel Ödegaard b1643f536c Docs: Fix formatting of markdown file (#43642) 2022-01-04 09:51:13 +01:00
idafurjes 65e60759fb Rename AddEventListenerCtx to AddEventListener and PublishCtx to Publish (#43566) 2022-01-04 09:36:01 +01:00
J Guerreiro a0cf57b5b8 AccessControl: Reduce tone of access error (#43601) 2022-01-04 09:28:55 +01:00
achatterjee-grafana 88bc47441f added note that notifications no longer include images. (#43635) 2022-01-03 17:57:38 -05:00
Ryan McKinley a3d2c79d06 Previews: check feature flag on dashboard manage page (#43632) 2022-01-03 23:15:50 +01:00
Gilles De Mey 56d088c441 devenv: fix maildev block (#43624) 2022-01-03 22:15:24 +01:00
Gilles De Mey 7de5d5fbd1 Alerting: adds missing type info to the FieldConfigSource (#43619) 2022-01-03 17:16:43 +01:00
Gilles De Mey d7273c1158 Alerting: fix error dismiss tooltip placement (#43616) 2022-01-03 16:09:08 +01:00
Levente Balogh 8ed5b95f42 Chore: change triggering of the detect-breaking-changes Github flow (#43188)
* chore: only run the breaking-changes flow on pull requests

* chore: run the detect-breaking-changes flow on opening a PR

* chore: use

* Wip

* Wip

* Wip

* Wip

* Wip

* Wip

* Wip

* Wip

* Wip

* Wip

* Wip

* Wip

* Wip

* Wip

* Wip

* Wip

* Wip

* trying to get workflow split running.

* trying to trigger workflow.

* trying to trigger.

* Splits levitate job into two workflows.

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2022-01-03 12:48:12 +01:00
Piotr Jamróz 1695468de1 Loki: Improve log volume error handling (#42534)
* Reduce verbosity of the error message when log volume query fails

* Fix unit tests
2022-01-03 10:21:11 +01:00
Piotr Jamróz 7682eabd29 Graphite: Make Graphite config page more accessible (#43333) 2022-01-03 10:17:15 +01:00
natellium 1e7a730f1f Chore: fix removeFromProject command name 2021-12-30 18:33:27 +01:00
Maria Alexandra 739e9d88d1 Chore: Add command to remove issue from project in GH actions (#43595)
Co-authored-by: natellium <natalia.bernarte@grafana.com>
2021-12-30 17:45:27 +01:00
Maria Alexandra c68b6698ff Chore: Fix format error in commands.json (#43596) 2021-12-30 15:14:59 +01:00
Marcus Andersson efd7a12686 Chore: Revert externalization of the tslib so it gets bundled with plugins. (#43556)
* Revert externalization of the tslib so it gets bundled with the plugins.

* Adding pnp-webpack-plugin to properly resolve dependencies in nested plugins.

* added dependency on lodash.
2021-12-30 08:53:42 +01:00
Kyle Brandt f17fb76b5e SSE: Add is_nan() and other like functions and allow '_' in func names (#43555)
* SSE: Add is_nan() and allow '_' in func names

is_null() infn(), is_inf(), is_number()
2021-12-29 11:40:52 -05:00
Gilles De Mey 43c81ddd23 Alerting: persist error dismissal to localstorage (#43406) 2021-12-28 20:56:43 +01:00
idafurjes 8e6d6af744 Rename DispatchCtx to Dispatch (#43563) 2021-12-28 17:36:22 +01:00
idafurjes 7936c4c522 Rename AddHandlerCtx to AddHandler (#43557) 2021-12-28 16:08:07 +01:00
Timur Olzhabayev ec9d6b9ca9 chore(drone): switch to using cypress built image for e2e tests 2021-12-28 13:59:20 +01:00
Joan López de la Franca Beltran 80e0dd74d2 Encryption: Increase context timeout on flaky test (#43553) 2021-12-28 13:34:45 +01:00
idafurjes 56c3875bb9 Chore: Remove context.TODO (#43458)
* Remove context.TODO() from services

* Fix live test
2021-12-28 10:26:18 +01:00
Alexander Weaver 56b3dc5445 Alerting: Allow configuration of non-ready alertmanagers (#43063)
* Create API test for overwriting invalid alertmanager config

* Avoid requiring alertmanager readiness for config changes

* AlertmanagerSrv depends on functionality rather than concrete types

* Add test for non-ready alertmanagers

* Additional cleanup and polish

* Back out previous integration test changes

* Refactor of tests incorrectly caused a test to become redundant

* Use pre-existing fake secret service

* Drop unused interface

* Test against concrete MultiOrgAlertmanager re-using fake infra from other tests

* Fix linter error

* Empty commit to rerun checks
2021-12-27 17:01:17 -06:00
Alexander Weaver 9abdaf251f Alerting: Fix global state sensitivity in notifier channel tests (#43508) 2021-12-27 11:58:17 -06:00
Joan López de la Franca Beltran 83bc445d3e Encryption: Fix DEKs cache (#43129)
* Encryption: Fix DEKs cache

* Clarify tests
2021-12-27 18:04:47 +01:00
Calle Gustafsson c3eb1ffe85 Cloud Monitoring: Adds metric type to Metric drop down options (#43268)
* Fixes Google Cloud Monitoring Deduplication

Bug: #42931

* Use useStyles instead of stylesFactory
2021-12-27 08:59:04 +01:00
Timur Olzhabayev 169d39f8e4 feat(e2e-artifacts): upload e2e artifacts to a gcs bucket (#43210)
feat(e2e-artifacts): upload e2e artifacts to a gcs bucket
2021-12-24 10:43:32 +01:00
Alex Khomenko 3b4a4be3c6 Feature highlights: add setting toggle (#43394)
* Feature highlights: add toggle setting

* Settings: Use provider for 'feature_highlights' section

* Fix frontendsettings API tests

* Document the toggle

Co-authored-by: Joan López de la Franca Beltran <5459617+joanlopez@users.noreply.github.com>
Co-authored-by: Joan López de la Franca Beltran <joanjan14@gmail.com>
2021-12-24 10:49:52 +02:00
Leon Sorokin e75edc810d BarChart: color by field, x time field, bar radius, label skipping (#43257)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-12-23 10:04:41 -08:00
Ryan McKinley 4233a62aeb DashboardPreviews: add dashboard previews behind feature flag (#43226)
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Artur Wierzbicki <artur@arturwierzbicki.com>
2021-12-23 09:43:53 -08:00
Uchechukwu Obasi 545d6c4ddb Chore: move closePopover utility to a standalone file (#43478)
* Chore: move close popover utility to a standalone file

* remove duplicate function in colorpicker

* fixed incorrect import

* make method slightly flexible by removing type parameter
2021-12-23 18:08:02 +01:00
MeanMina c5af1aecec add issues to Observability Squad project (#43500) 2021-12-23 15:47:08 +00:00
Shirley 3326c3ab7b AzureMonitor: Exclude ( in second capturing group for CodeQL ReDoS vulnerability (#43494) 2021-12-23 15:10:35 +01:00
renovate[bot] b87c737a14 Update dependency react-calendar to v3.5.0 (#43480)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-23 10:37:32 +01:00
Karl Persson 0ace9695a6 Access control: Add optional hooks (#43372)
* Add optional OnSet hooks
2021-12-23 10:10:06 +01:00
Uchechukwu Obasi eb4c3a4485 Update frontend guide to reflect new paradigm for api organization (#43435) 2021-12-23 09:28:41 +01:00
Dimitris Sotirakis 59e153cde8 Remove Github Packages publish step (#43453) 2021-12-23 10:12:37 +02:00
J Guerreiro 06d4cb0303 AccessControl: Disable user remove and user update roles when they do not have the permissions (#43429)
* AccessControl: Disable user remove and update roles when they do not have the appropriate permissions

* AccessControl: Ensure frontend tests pass in CI
2021-12-23 09:08:13 +01:00
nikki-kiga 4c95abb269 Geomap: Update markers layer styles (#43446)
* update markerslayer styles

* use static style when possible

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-12-22 13:50:02 -08:00
nikki-kiga c53e384cb5 Geomap: Geojson layer initial dynamic styling (#43308)
* support dynamic values in geojson

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-12-22 13:06:33 -08:00
J Guerreiro 3d4fafcf70 AccessControl: Add access control metadata to org user DTOs (#43362)
* AccessControl: Add access control metadata to OrgUserDTO

* AccessControl: get User AC metadata

* AccessControl: return User Access Control metadata when requested
2021-12-22 18:46:33 +01:00
Uchechukwu Obasi 98bf9a6d2a Tooltip: make widget accessible (#43468)
* add useToolTipTrigger react aria and state to grafana-ui

* show tooltip on focus and close tooltip when esc key is pressed

* remove react-aria/tooltip package

* fix failing test
2021-12-22 18:11:07 +01:00
Marcus Efraimsson 7d3bdb6d1b Plugins: Set backend metadata property for core plugins (#43349)
Ref #42648
Ref #42781
2021-12-22 17:59:26 +01:00
renovate[bot] 4ec6f95bcd Update dependency postcss to v8.4.5 (#43463)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-22 16:54:16 +00:00
J Guerreiro a1b8b5d123 Usage stats: Count API keys (#42883)
* Stats: add api key count to usage stats

* Chore: correctly capitalize struct member
2021-12-22 17:37:45 +01:00
Ivana Huckova f63c2e4bc4 Prometheus: Fix interpolation of variables in Annotation queries (#43459) 2021-12-22 16:50:58 +01:00
renovate[bot] cd93c6cdc0 Update dependency cypress to v9.2.0 (#43460)
* Update dependency cypress to v9.2.0

* kick drone

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-12-22 15:36:41 +00:00
renovate[bot] e6bc87b315 Update dependency @microsoft/api-extractor to v7.19.2 (#42983)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-22 15:12:58 +00:00
renovate[bot] 13bad50709 Update dependency @microsoft/api-extractor-model to v7.15.1 (#42985)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-22 15:12:43 +00:00
renovate[bot] 2d74ad5971 Update dependency is-hotkey to v0.2.0 (#43330)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-22 15:06:29 +00:00
David Henderson 575eb68828 CloudWatch: Add Missing Elasticache Host-level metrics (#43455)
Add missing host-level Elasticache metrics from https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheMetrics.HostLevel.html

Follows from https://github.com/grafana/grafana/pull/43336#issuecomment-999367311
2021-12-22 14:02:52 +01:00
renovate[bot] 5c22679961 Update dependency ol to v6.9.0 (#43404)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-22 13:00:56 +00:00
idafurjes b8852ef6a3 Chore: Remove context.TODO() (#43409)
* Remove context.TODO() from services

* Fix live test

* Remove context.TODO
2021-12-22 11:02:42 +01:00
Karl Persson 2409d8dc1f check the value of the feature toggle (#43433) 2021-12-22 10:05:53 +01:00
Hugo Häggmark ded33ba449 Alert: Makes content scrollable and limits height (#43449) 2021-12-22 09:45:41 +01:00
Jean-Philippe Quéméner ffc72aa255 Alerting: fix gosec warning that is not valid (#43425) 2021-12-21 19:47:47 +01:00
Daniel Lee 93de61f690 fix for CWE-89 (#43407)
The sqlOrArgs unpacking seems to confuse CodeQL. Trying something simpler
2021-12-21 19:04:56 +01:00
Todd Treece 6b0f5d464b @grafana/data: fix build issue caused by merge of #43222 after #43423 (#43436) 2021-12-21 12:28:10 -05:00
Coleman Rollins 119f756c0e [cr] whitelist flexbox styles in text panel editor (#43222)
* [cr] whitelist flexbox styles in text panel editor

* [cr] separate sanitize function for text panel only

* [cr] separate markdown function for text panel

* [cr] common markdown options
2021-12-21 16:32:48 +00:00
Uchechukwu Obasi 6abced840d UserInviteForm: move API logic away from components (#43408)
* userInviteForm: move API logic away from components

* removes duplicate response alert

* reverse api logic to handle errors

* move redirection logic to component

* chore: cleanup code
2021-12-21 17:19:22 +01:00
Ashley Harrison 39f787cbef Navigation: Remove some redundant css and tidy up reverse logic (#43403)
* Remove some redundant css and tidy up reverse logic

* Fix alignment of subtitle

* Remove navbar-dropdown class
2021-12-21 16:15:03 +00:00
Vicky Lee 2945c3a276 automate Cloud DS GH projects (#43428) 2021-12-21 15:58:23 +00:00
Todd Treece dd884dbfd5 @grafana/data: Update xss dependency (#43423) 2021-12-21 10:55:36 -05:00
Peter Holmberg 5db03cf91a Alerting: Fix remaining a11y issues (#43420)
* add aria labels

* reverting

* chore: revert yarn.lock

Co-authored-by: gillesdemey <gilles.de.mey@gmail.com>
2021-12-21 16:06:23 +01:00
Timur Olzhabayev 339cfb8736 chore(commands): add issues of type/docs to global docs project (#43114) 2021-12-21 15:53:55 +01:00
Torkel Ödegaard e877a9822e GrafanaExperimental: update dependency (#43322)
* GrafanaExperimental: update dependency

* Bump experimental

* yarn up experimental

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2021-12-21 15:36:21 +01:00
Travis Patterson d52a6e3d3b Change 'grafana-expression' to ExpressionDatasourceRef.type so isExpr… (#43379)
* Change 'grafana-expression' to ExpressionDatasourceRef.type so isExpressionReference works

* use constant ref in tests

* import from package
2021-12-21 07:11:11 -07:00
Hugo Häggmark b41c3124bb Chore: Update Prepare release action (#43397)
* Update bump-version.yml

* Chore: test

* tst

* use right branc

* use right test

* chore: test

* Chore: test

* Chore: test

* Chore:test

* WIP: test

* WIP: test

* WIP: test

* WIP: test

* Chore: revert workflows

* WIP: test

* Update prepare-release.yml

* WIP: test

* Chore: test

* WIP: test

* Update prepare-release.yml

* Update bump-version.yml

* Update prepare-release.yml

* Update bump-version.yml

* Update prepare-release.yml

* Update prepare-release.yml

* Chore: update close-milestone

* Update close-milestone.yml

* Chore: update remove-milestone

* Update prepare-release.yml

* Chore: updates update-changelog

* Update prepare-release.yml

* Update prepare-release.yml

* Chore: forgot the version_call param

* Update prepare-release.yml

* Update bump-version.yml

* Update close-milestone.yml

* Update remove-milestone.yml

* Update update-changelog.yml

* Chore: removes empty spaces

* Update prepare-release.yml

* Start Test: change ref to test github action bump version

* test: use the right branch reference

* Update bump-version.yml

* ref right branches

Co-authored-by: Maria Alexandra <239999+axelavargas@users.noreply.github.com>
2021-12-21 14:34:05 +01:00
Karl Persson b3d5a607d4 Access Control: Add option to filter only managed permissions (#43371)
* Add option to filter only managed permissions
2021-12-21 14:22:54 +01:00
Tania B c1be17bec7 Chore: Add Google Cloud KMS dependency (#43211)
* Encryption: Add Google Cloud KMS dependency

* Change version
2021-12-21 14:15:27 +02:00
Uchechukwu Obasi dfd045a3b3 NewOrgPage: Disable input validation on keypress (#43132)
* NewOrgPage: migrate API function calls to Redux

* disable input validation on keypress
2021-12-21 12:54:14 +01:00
renovate[bot] 159fb4cebb Update dependency eslint-plugin-react to v7.27.1 (#43207)
* Update dependency eslint-plugin-react to v7.27.1

* Fix up code to work with new version of eslint-plugin-react

* kick drone

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-12-21 11:11:27 +00:00
Ashley Harrison c7f76df61e Use outline -2px to guarantee visibility of outline (#43400) 2021-12-21 10:52:26 +00:00
Daniel Lee e993f0c62e devenv: Solving two of the code scanning fails (#43084)
* Solving two of the code scanning fails

Removes new lines from user input that is logged. Fixes CWE-117 from CodeQL

* remove newlines from request headers

* mask cookie value in header

* comment out logging of headers to solve CWE-117

Instructions added on uncommenting the log statement and on rebuilding the docker container
2021-12-21 11:36:21 +01:00
Maria Alexandra 1008d46304 Chore: Remove User Essentials from public/ directory in CODEOWNERS (#43370) 2021-12-21 09:26:02 +01:00
Siavash Safi 4c4322f717 CloudWatch: Add all ElastiCache Redis Metrics (#43336)
Add all missing Redis ElastiCache metrics.
https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheMetrics.Redis.html

Signed-off-by: Siavash Safi <siavash.safi@gmail.com>
2021-12-21 09:13:41 +01:00
Andres Martinez Gotor 5766c624ff CloudWatch: Run migrations even with a missing period (#43350) 2021-12-20 17:57:58 +01:00
Ashley Harrison 57c3549b07 Implement left arrow to focus parent, fix list style on firefox (#43345)
* Implement left arrow to close menu for now, fix list style on firefox

* Implement onLeft

* Fix outline of first item in navbar

* Fix focus styles appearing when using mouse

* add unit test
2021-12-20 17:41:14 +01:00
idafurjes ff3cf94b56 Chore: Remove context.TODO() from services (#42555)
* Remove context.TODO() from services

* Fix live test
2021-12-20 17:05:33 +01:00
Ashley Harrison 6f8e651cdb Move the background style to the parent component (#43359) 2021-12-20 16:00:29 +00:00
Gilles De Mey dc163a958d Alerting: update response text assertion (#43291) 2021-12-20 16:45:29 +01:00
Sarah Zinger b1df13e630 Azure Monitor: Bug fix for variable interpolations in metrics dropdowns (#43251)
* Azure Monitor: Bug fix for template variables.
- Adds back support for custom dropdown field names (such as those that use template variables)
- No longer clears a dropdown if selected value is an unknown option. (Hopefully makes debugging dynamically generated dashboards from json easier to debug).
- Add back support in UI for custom values
2021-12-20 10:11:10 -05:00
renovate[bot] bd841edc38 Update dependency lint-staged to v12.1.3 (#43363)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-20 14:50:30 +00:00
Carl Bergquist f373588810 setting: configure toggles as true/false instead of array (#43326)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2021-12-20 15:33:11 +01:00
Peter Holmberg dda84dbf1a Alerting: Fixed logic on how to render alert tab (#43339)
* fixed logic on how to render alert tab

* remove console logs move some logic
2021-12-20 15:30:31 +01:00
Pedro Araújo 18fdb89554 grafana-mixin: Fix GrafanaRequestsFailing alert (#43116)
Due to PromQL's label matching, both sides of the division will have same series; that means that, whenever there's a 5xx error, both sides will have the same value and the division will be `1`. I believe the idea was to get the ratio of 5xx compared will all status code, and to do that, we need to aggregate the `status_code` dimension away.
2021-12-20 15:12:37 +01:00
renovate[bot] 4dc63698ac Update dependency eslint-plugin-jsdoc to v37.4.0 (#43329)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-20 14:08:45 +00:00
jcolladokuri ec5c75c6a1 Azure Monitor: Fix link in server requests panel in App Insights Dashboard (#43068) 2021-12-20 09:01:21 -05:00
Maria Alexandra 0ce7799046 Chore: Create prepare release action (#43357)
Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
2021-12-20 14:16:22 +01:00
Kyle Brandt e1be23ac1e Chore: update image-spec indirect dependency (#43155)
for GHSA-77vh-xpmg-72qh
2021-12-20 13:24:46 +01:00
Dimitris Sotirakis d88502112f Chore: Replace publish keyword with store (#43340)
* Replace publish keyword with store

* Rename publish_steps with store_steps

* Update grabpl version
2021-12-20 12:23:51 +01:00
Tania B 0dc86bf7f4 Chore: Move default encryption provider to kmsproviders package (#43331) 2021-12-20 12:47:49 +02:00
Gábor Farkas 1879a6855e prometheus: respect the http-method data source setting (#42753)
* prometheus: respect the http-method data source setting

* removed forgotten if-true section

* refactored json-check
2021-12-20 11:27:18 +01:00
Torkel Ödegaard b867ecb515 ColorPicker: Refine design of color picker (#43275)
* ColorPicker: Refine design of the color picker popover

* One more tweak

* removed unneeded div and add hover style

* Fixing test

* Reverse order from dark to brighter
2021-12-20 10:50:48 +01:00
Marcus Efraimsson 85f134969e Docs: Update merge a pull request guideline (#43273)
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-12-20 10:37:16 +01:00
renovate[bot] 30d00b9b86 Update dependency glob to v7.2.0 (#43230)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-20 09:32:59 +00:00
renovate[bot] 3b561c8164 Update dependency @react-aria/utils to v3.11.0 (#43262)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-20 09:28:59 +00:00
renovate[bot] a356c326fb Update dependency fork-ts-checker-webpack-plugin to v6.5.0 (#43229)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-20 09:27:29 +00:00
Gábor Farkas d2283cf799 influxdb: config: accessibility fixes (#43260) 2021-12-20 10:11:00 +01:00
Karl Persson c3ca2d214d Access control: Refactor managed permission system to create api and frontend components (#42540)
* Refactor resource permissions
* Add frondend components for resource permissions

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2021-12-20 09:52:24 +01:00
Ilya Stoliar 9cf5623918 CloudWatch: Add Data Lifecycle Manager metrics and dimension (#43310) 2021-12-20 09:48:07 +01:00
Dimitris Sotirakis b7f8c1855d Add services to main-integration-tests (#43325) 2021-12-20 09:33:47 +01:00
Dimitris Sotirakis 2fd2fd353e Split pipelines on main builds (#43324) 2021-12-20 09:09:25 +01:00
Hugo Häggmark aa47cac69f Variables: Fix for migrating legacy data source properties (#43263) 2021-12-20 06:49:17 +01:00
Leon Sorokin e240c21a43 BarChart: fix excessive viz re-init due to cloneDeep(props) (#43293) 2021-12-19 00:26:25 -06:00
Ryan McKinley 33c64dba38 BarChart: support log scale (#43305) 2021-12-18 11:21:22 -08:00
Nathan Marrs af3860e953 Canvas: add wind turbine element to canvas panel (#43309) 2021-12-18 11:20:50 -08:00
Nathan Marrs 8be4182e49 Canvas: Add button element + basic onClick support (#43252) 2021-12-17 14:05:57 -08:00
Artur Wierzbicki 197f4f81f2 #41993: make it possible to create N random60hz channels (#43295) 2021-12-17 23:42:37 +04:00
Connor Lindsey 70c0a9d117 A11y: Fix Fastpass issues for tracing query editors and config pages (#42759)
* Add aria-labels to Jaeger config page

* Fix fastpass issues for Tempo config page

* Fix fastpass issues for other tracing query types like search
2021-12-17 11:49:21 -07:00
Leon Sorokin dd247f26de BarChart: refactor x tick label placement logic (#43256) 2021-12-17 11:35:09 -06:00
Shirley 5cffd98e24 Docs: Update Google Cloud Monitoring documentation (#43135)
* Update documentation

* Correct urls

* Correct provisioning data source url anchor

* Use relref and replace variable syntax section with official doc link

* Update docs/sources/datasources/google-cloud-monitoring/_index.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/google-cloud-monitoring/_index.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/google-cloud-monitoring/_index.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/google-cloud-monitoring/_index.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/google-cloud-monitoring/_index.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/google-cloud-monitoring/_index.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/datasources/google-cloud-monitoring/_index.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Put back 'and'

* Change the numbering to 1

* Change numbering back to 1

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-12-17 17:41:01 +01:00
Kyle Brandt 4c59cc4bf4 Chore: Update indirect dependency containerd (#43151)
for GHSA-5j5w-g665-5m35 and GHSA-c2h3-6mxw-7mvq
2021-12-17 17:01:45 +01:00
Kyle Brandt c50f0d1dd1 Chore: update uap-go (#43285)
for CVE-2021-21317
2021-12-17 10:43:43 -05:00
Sofia Papagiannaki c4aaf5f9d1 API: prevent provisioned dashboard from being updated (#41894) 2021-12-17 10:31:52 -05:00
Gábor Farkas db18acff15 InfluxDB: InfluxQL: query editor: skip fields in metadata queries (#42543)
* influxdb: influxql: query editor: skip fields for metadata

* test added

* removed forgotten line

* updated test name

* updated comment

* simplified test code
2021-12-17 15:09:02 +01:00
Gilles De Mey db3cc738d6 Alerting: fixes rewiring unrelated reduce and resample expressions (#43174) 2021-12-17 14:46:55 +01:00
Shirley acb1f54128 Chore: Update and replace redundant wording (#43138)
* Replace redundant wording

* Add term key

* Reduce wording and move down tooltip

* Reduce margin between tooltip and button

* Correct manual margin to same as button's
2021-12-17 13:45:24 +01:00
Gábor Farkas 623ae1e41d datasources: config: add aria-label (#43266) 2021-12-17 11:44:38 +01:00
kay delaney 4855fe78f8 TimeSeriesPanel: Null points no longer get tooltips (#42371)
* TimeSeriesPanel: Null points no longer get tooltips

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2021-12-17 10:38:08 +00:00
Maria Alexandra 7c5d5c0128 Chore: Create close milestone github action (#43269) 2021-12-17 11:14:09 +01:00
renovate[bot] 1aa4c27cd9 Update dependency @cypress/webpack-preprocessor to v5.11.0 (#43240)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-17 09:44:59 +01:00
Alexander Zobnin 2c0f961c59 OAuth: Fix forwarding id token to the data source (#43204) 2021-12-17 03:34:16 -05:00
Leon Sorokin bba7bdeb9e GraphNG: uPlot 1.6.18 (#43255) 2021-12-17 00:24:44 -06:00
nikki-kiga 625c5e0e09 Geomap: Add default svg size (#43246)
* add default svg size
2021-12-17 01:10:52 +01:00
Leon Sorokin 8fdbc6cc20 TimeSeries: don't auto-disable fill of fillBelowTo targets (#43165) 2021-12-16 14:52:47 -06:00
Yuriy Tseretyan 1a762083d7 Alerting: make alert rule routine evaluation control be thread-safe (#41220)
* change registry.delete to return deleted struct
* use pointer to alertRuleInfo instead copying.
* do not access evaluation channel when routine is stopped
* remove stopCh and use context cancellation
* do not return ctx.Err when channel is cancelled because it cancels all other routines
* make alertRuleInfo fields and functions package private
2021-12-16 14:52:47 -05:00
Nathan Marrs 56921b205d Canvas add drone elements (#43122) 2021-12-16 11:05:58 -08:00
Nathan Rodman 187a8703c8 Alerting: Add filters for AlertList panel (#43130)
* add state filters for prom alerts

* combine state filters

* add datasource filter for panel

* remove duplicate state check

* show only prom, loki, and grafana datasources
2021-12-16 10:17:24 -08:00
Ryan McKinley be498f312e Geomap: use string comparison for eq operator (#43181) 2021-12-16 09:59:36 -08:00
Leon Sorokin 6b7ef6a80b BarChart: fix gradient fill orientation when horizontal (#43183) 2021-12-16 11:43:29 -06:00
Ryan McKinley 2754e4fdf0 Expressions: use datasource model from the query (#41376)
* refactor datasource loading

* refactor datasource loading

* pass uid

* use dscache in alerting to get DS

* remove expr/translate pacakge

* remove dup injection entry

* fix DS type on metrics endpoint, remove SQL DS lookup inside SSE

* update test and adapter

* comment fix

* Make eval run as admin when getting datasource info

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* fmt and comment

* remove unncessary/redundant code

Co-authored-by: Kyle Brandt <kyle@grafana.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Santiago <santiagohernandez.1997@gmail.com>
2021-12-16 13:51:46 -03:00
renovate[bot] 1745cd8186 Update dependency css-minimizer-webpack-plugin to v3.3.0 (#43215)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-16 17:43:52 +01:00
Marcus Efraimsson df6765d805 Chore: Update release notes index page with 8.3.3 (#43224) 2021-12-16 17:41:27 +01:00
Marcus Efraimsson 18d909beed Chore: Go mod tidy (#43220) 2021-12-16 17:22:10 +01:00
renovate[bot] 2d4e6e79b2 Update dependency expose-loader to v3.1.0 (#43216)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-16 16:56:58 +01:00
Santiago 15c214d467 Fix error when setting alerts for Azure Monitor (#42989)
* pass the correct value to buildScaleKey()

* drop unnecessary type casting

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>

* fix linting errors

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2021-12-16 12:51:14 -03:00
renovate[bot] f789a7f88c Update dependency eslint-plugin-jsdoc to v37.2.2 (#43203)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-16 13:51:03 +00:00
renovate[bot] 3606e4323e Remove dependency abortcontroller-polyfill to v1.7.3 (#43048)
* Update dependency abortcontroller-polyfill to v1.7.3

* Remove abortcontroller-polyfill since we don't use phantomjs anymore

* kick drone

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-12-16 13:49:27 +00:00
Jeremy Price 13fdc5231d AccessControl: upgrade apikeys by adding service accounts (#42425)
Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>

* Change default options for cloned service account

* Run in background

* Add endpoint to upgrade api keys to service accounts
2021-12-16 14:28:16 +01:00
renovate[bot] 57def82f26 Update dependency eslint-plugin-no-only-tests to v2.6.0 (#43206)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-16 14:21:10 +01:00
renovate[bot] de125063f9 Update dependency enzyme-to-json to v3.6.2 (#43202)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-16 14:03:43 +01:00
renovate[bot] 1a7ee68133 Update dependency date-fns to v2.27.0 (#43199)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-16 14:01:57 +01:00
Jean-Philippe Quéméner b605340668 Alerting: log errors happening in the API on server side (#43192)
* Alerting: log errors happening in the API on server side

* adapt tests to reflect changed payload
2021-12-16 13:33:10 +01:00
renovate[bot] 8e8b0616fe Update dependency css-loader to v6.5.1 (#43095)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-16 11:59:24 +00:00
renovate[bot] 505009eeca Update dependency cypress to v9.1.1 (#43198)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-16 12:47:17 +01:00
Ashley Harrison 80b55f09ad Configuration: You can now see your expired API keys if you have no active ones (#42452)
* Configuration: Always display expired API keys

* Use exclamation-triangle instead

* Reintroduce toggle, move logic into store and call both endpoints

* Handle apiKeys without TTL

* Remove backend changes and make checks in frontend instead
2021-12-16 11:46:09 +00:00
Josh Hunt 609a1aa8ad Chore: parse parseDuration values as numbers (#42826)
* Chore: parseDuration values as numbers

* Clean up RefreshPicker labels
2021-12-16 11:35:53 +00:00
renovate[bot] 23be398c9c Update dependency css-minimizer-webpack-plugin to v3.2.0 (#43117)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-16 11:16:44 +00:00
renovate[bot] 7bd2e21464 Update dependency core-js to v3.20.0 (#43094)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-16 11:13:49 +00:00
Torkel Ödegaard 9f05aa736c Panel: Support using $__interval and $__interval_ms in panel title 2021-12-16 12:05:00 +01:00
Ben Sully 13d9fddd3e Transformations: Add 'JSON' field type to ConvertFieldTypeTransformer (#42624)
* Add 'JSON' field type to ConvertFieldTypeTransformer

I've been playing around with #41994 and found that it requires fields
to contain array values, which can't be sent from a backend plugin. This
PR adds the ability for the ConvertFieldTypeTransformer to parse
JSON values and store the result in the transformed field.
The main use case for this right now is so that a field
containing a JSONified array can be transformed into a field
containing an actual array, which can in
turn be used for the table charts in #41994.

Supersedes #42521.

* Add second option to complex field conversion to increase flexibility

This avoids falsely equating 'JSON' with FieldType.other, and instead
allows multiple parsers to be used if the 'Complex' type is selected.

Currently only JSON parsing is implemented, but others could be
supported easily in future.

* Revert "Add second option to complex field conversion to increase flexibility"

This reverts commit 6314ce35eb.

* Improve test for object parsing of complex field transformer

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-12-16 11:18:11 +01:00
Ashley Harrison c3ca46d5f6 Chore: Login via the API by default in Cypress (#43167)
* Use the api to login in cypress by default

* export getBaseUrl

* Revert "export getBaseUrl"

This reverts commit ae7eecea37.

* just use BASE_URL from the env

* fix exemplars test

* move into separate functions
2021-12-16 09:28:37 +00:00
Uchechukwu Obasi d03aef1951 SelectOrgPage: migrate API function calls to Redux (#43133)
* SelectOrgPage: migrate API function calls to Redux

* used a much better approach

* writes test for getUserOrganizations action

* writes test for userOrganizationsLoaded reducer

* change userOrg to plural
2021-12-16 09:57:18 +01:00
David Parrott 8206802f19 Rework template docs and add examples (#43178) 2021-12-15 15:00:12 -08:00
nikki-kiga fde26b0bd9 Geomap: Add tooltip check to display tooltip by layer (#43131)
* Add tooltip check to display tooltip by layer
2021-12-15 13:51:39 -08:00
Artur Wierzbicki 84ae13fe5d Live: keep stream history on 'refresh' (#41492)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-12-15 11:01:55 -08:00
Gilles De Mey bb3b5c10e7 Alerting: fix WeCom channel notifier test assertion (#43173) 2021-12-15 19:45:12 +01:00
Gilles De Mey cbbbb505b4 Alerting: use HTML-safe characters for the default template (#43148) 2021-12-15 17:57:08 +01:00
Gábor Farkas f0fca6e018 update auto-generated files (#43159) 2021-12-15 17:50:29 +01:00
smallpath aec14cba42 Alerting: Support WeCom as a contact point type (#40975)
* add wecom notifier

* fix backend lint

* fix alerting channel test

* update wecom doc

* update notifiers

* update wecom notifier test

* Apply suggestions from code review

Co-authored-by: gotjosh <josue.abreu@gmail.com>

* unify wecom alerting

* fix backend lint

* fix front lint

* fix wecom test

* update docs

* Update pkg/services/ngalert/notifier/channels/wecom.go

Co-authored-by: gotjosh <josue.abreu@gmail.com>

* Update docs/sources/alerting/old-alerting/notifications.md

Co-authored-by: gotjosh <josue.abreu@gmail.com>

* Update docs/sources/alerting/old-alerting/notifications.md

Co-authored-by: gotjosh <josue.abreu@gmail.com>

* Update docs/sources/alerting/old-alerting/notifications.md

Co-authored-by: gotjosh <josue.abreu@gmail.com>

* remove old wecom notifier

* remove old notifier doc

* fix backend test

* Update docs/sources/alerting/unified-alerting/contact-points.md

Co-authored-by: gotjosh <josue.abreu@gmail.com>

* fix doc style

Co-authored-by: gotjosh <josue.abreu@gmail.com>
2021-12-15 16:42:03 +00:00
Uchechukwu Obasi f16696a069 Orgs: move redirection logic to components (#43160)
* Orgs: move redirection logic to components

* removes error notification since it's been handled under the hood
2021-12-15 17:15:16 +01:00
Levente Balogh 3f554f58bd Detecting breaking changes (#42934)
* chore: add a script for detecting breaking changes

* chore: add a temporary binary for POC3

* chore: add a Github Action workflow for detecting breaking changes

* chore: remove unused variables from the script

* chore: rename the POC3 executable script

* chore: add a label if there is a breaking change

* chore: remove "breaking change" label if all is passing

* chore: rename steps

* fix: only remove the label if there were no breaking changes

* chore: jump to the correct step

* chore: skip `@grafana/toolkit`

* chore: add a message for opening links in a new tab

* chore: update comment message

* chore: use Node 16 for the breaking changes workflow

* chore: install Yarn separately

* chore: use @grafana/levitate

* refactor: remove the unused levitate.js bundle

* fix: handle error when trying to remove a label that does not exist

* chore: delete the comment if there are no breaking changes

* chore: add reviewers automatically

* fix: use double-quote in shell script

* TEMPORARY: introduce a breaking change in `@grafana/data`

* fix: use correct line number for the breaking changes

* Revert "TEMPORARY: introduce a breaking change in `@grafana/data`"

This reverts commit 986ac9ab82.

* chore: remove unnecessary line from .eslintignore
2021-12-15 17:07:11 +01:00
Josh Hunt 4f6d08f14b I18N: Add Lingui core translation framework. (#41827)
* I18N: Add Core Lingui framework for translating the UI

* Make FieldSet accept ReactNode for the label, so it can be translated

* Translate a phrase in the User profile edit form

* Translate phrase

* run lingui compile before webpack builds

* init i18n more lazily

* i1n:compile in drone lint step

* wip for getting tests to work

* Use mock lingui/macros because its too hard to use the real macros in Jest...

* mock messages for tests

* use specific lingui version

* add comment for test helper

* we actually don't need the i18n setup in tests because we mock out <Trans />

* update package.json

* remove unneded imports

* revert back babel core version

* Create a I18nProvider wrapper
2021-12-15 17:00:37 +01:00
Gábor Farkas 50c6c7a528 InfluxDB: fix accessibility problems (#42553)
* influxdb: influxql: query editor a11y fixes

* configure datasource page a11y fixes

* fixed unit test

* better a11y

* better a11y for the query editor

* simplify code

* updated tests

* removed explicit aria-label
2021-12-15 15:57:08 +01:00
Gábor Farkas 1569529808 theme: fixed colors to be monaco-compatible (#43153) 2021-12-15 14:52:31 +01:00
Gábor Farkas f9b6baa783 monaco-editor: updated from 0.31.0 to 0.31.1 (#43146) 2021-12-15 14:09:44 +01:00
Marcus Efraimsson 5bec46ce23 Build: Speed up integration tests (#43045)
Changes so that postgres/mysql services in Drone maps their data volumes 
to tmpfs volumes (memory) to improve performance.
2021-12-15 13:48:59 +01:00
Torkel Ödegaard 6724c42e84 Select: Memoize custom styles (#43070) 2021-12-15 13:33:35 +01:00
Ashley Harrison 566907e617 Dashboard: Prevent crash when expanding a row containing panels with … (#43032)
* Dashboard: Prevent crash when expanding a row containing panels with no yPos defined

* Add comment explaining defensive code
2021-12-15 12:31:53 +01:00
Gabriel MABILLE c7cabdfd6f AccessControl: Add accesscontrol metadata to datasources DTOs (#42675)
* AccessControl: Provide scope to frontend

* Covering datasources with accesscontrol metadata

* Write benchmark tests for GetResourcesMetadata

* Add accesscontrol util and interface

* Add the hasPermissionInMetadata function in the frontend access control code

* Use IsDisabled rather that performing a feature toggle check

Co-authored-by: Karl Persson <kalle.persson@grafana.com>
2021-12-15 12:08:15 +01:00
Marcus Efraimsson 2b1ed43cb2 Chore: Support PR checks for forks (#43128) 2021-12-15 09:57:04 +01:00
Uchechukwu Obasi ea71dafbfb Orgs: move duplicate API calls to Redux (#43030)
* WIP: move user/using api call to redux

* WIP: use redux instead in NewOrgPage component

* moved all the createOrg logic into redux

* type the redux state and action creators automatically

* adds test for setUserOrganization thunk

* update selectOrgPage to use Redux instead

* removes unnecessary dispatch call
2021-12-15 09:42:52 +01:00
Ryan McKinley 00e06874e5 Legend: extract common renderLegendFormat function (loki+prom) (#43054) 2021-12-15 04:19:16 +01:00
Ryan McKinley c2392598ea Geomap: support hide from tooltip (#43127) 2021-12-14 15:32:17 -08:00
malcolmholmes 198f947d0b Publish enterprise2 to correct bucket (#43115) 2021-12-14 18:43:24 +01:00
Ryan McKinley c0ff685d3b Live: support query execution with live RPC (#43118)
Co-authored-by: Alexander Emelin <frvzmb@gmail.com>
2021-12-14 18:38:20 +01:00
Alexander Emelin f4cc353225 Live: proxy subscribe data for subscribe and runstream plugin calls (#42824)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-12-14 20:12:00 +03:00
Connor Lindsey d2c5dac76f Tempo: Add provisioning example to Tempo docs (#43049)
* Add provisioning example to Tempo docs

* Update docs/sources/datasources/tempo.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-12-14 08:48:35 -07:00
Kyle Brandt 8598362929 Update latest.json to 8.3.3 (#43108) 2021-12-14 16:48:15 +01:00
Gilles De Mey 02039d7532 Alerting: show state history (#42362) 2021-12-14 16:36:54 +01:00
Andrej Ocenas dc57bcd458 Docs: Add CloudWatch Logs retry strategy timeout config (#42485)
* Add section for the timeout

* Move and remove the table

* Change header level
2021-12-14 16:18:45 +01:00
Maria Alexandra 7fc2c687ec Chore: Remove unnecessary metric tokens in the "remove milestone" workflow (#43096)
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-12-14 16:18:28 +01:00
Grot (@grafanabot) 8869c830b0 ReleaseNotes: Updated changelog and release notes for 8.3.3 (#43101) 2021-12-14 10:06:14 -05:00
Karl Persson 9558c09a7c Access Control: Store permissions on SignedInUser (#43040)
* add permission structure to signedinuser

* add middleware to load user permissions into signedinuser struct

* apply LoadPermissionsMiddleware to http server

* check for permissions in signedinuser struct

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
2021-12-14 16:05:59 +01:00
Connor Lindsey f1101efcec Tempo: Update tempo search to use tags query param (#42849)
* Update tempo search to use tags query param

* Remove unnecessary test
2021-12-14 07:41:46 -07:00
Will Browne e4ba5f17dd add core plugins thru store (#43085) 2021-12-14 15:22:40 +01:00
Leonard Gram 5d18834deb OAuth: persisting the id token (#42938)
* OAuth: persisting the id token

* OAuth: verifies that the idtoken gets persistet in the database
2021-12-14 15:22:10 +01:00
Eric Leijonmarck 4a3961400a Serviceaccounts: create serviceaccount api (#42150)
* WIP

* wip

* wip

* wip

* refactor: new return of the create service accoutn

* refactor: change to have correct role

* refactor: ability to create service accounts

* make public

* refactor: make ints instead

* refactor: remove location sprintf

* refactor: added back named constants
2021-12-14 14:39:25 +01:00
Piotr Jamróz 19374fce39 Explore: Generic query import/export (#40987)
* Add basic implementation

* Split import/export query interface

* Rename abstract query type

* Rename abstract query type

* Split loki/prom parsing

* Update docs

* Test importing abstract queries to Elastic

* Test exporting abstract queries from Graphite

* Test Prom and Loki query import/export

* Give better control to import/export all queries to data sources

* Fix unit test

* Fix unit test

* Filter out non-existing labels when importing queries to Loki

* Fix relative imports, names and docs

* Fix import type

* Move toPromLike query to Prometheus code

* Dedup label operator mappings

* importAbstractQueries -> importFromAbstractQueries

* Fix unit tests
2021-12-14 14:36:47 +01:00
Ashley Harrison e1a5fa063a Chore: Add remove-milestone workflow (#43086)
* Add remove milestone action

* Update name

* Chore: use main branch from github action repository

Co-authored-by: Alexandra Vargas <alexa1866@gmail.com>
2021-12-14 13:54:19 +01:00
renovate[bot] 1d79fc9360 Update dependency classnames to v2.3.1 (#43090)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-14 13:15:23 +01:00
renovate[bot] e82a522422 Update dependency autoprefixer to v10.4.0 (#43056)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-14 13:12:04 +01:00
malcolmholmes 555f5a49ce Publish non-release CDN assets (#43087) 2021-12-14 13:01:54 +01:00
Shirley 21656a0491 Remove reference to legacydata package (#43075)
* Remove reference to legacydata package

* Change from and to times
2021-12-14 12:58:31 +01:00
renovate[bot] 55b6052ebe Update dependency axios to v0.24.0 (#43057)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-14 11:52:17 +00:00
renovate[bot] fbb78604e7 Update dependency @visx/tooltip to v2.2.2 (#43047)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-14 11:51:11 +00:00
kay delaney c926d4d7f2 Dashboard: Fix lazy loading for repeated panels (#43083) 2021-12-14 11:23:42 +00:00
Timur Olzhabayev 61227998a7 chore(commands): add plugins-catalog issues to plugins platform project automatically (#43078) 2021-12-14 11:46:40 +01:00
Dessen Xu e79254d9aa Toolkit: Fix bug with rootUrls not being properly parsed when signing a private plugin. (#43014)
* fix plugin sign

* modify urls

* back to urls...

* code format
2021-12-14 11:43:26 +01:00
Marcus Efraimsson 8e0da70026 Chore: Add PR Check action enforcing a milestone is set (#43025)
Adds a PR Check action with a rule that enforces a milestone is set on the PR. 

Ref grafana/grafana-github-actions#34
Ref grafana/grafana-github-actions#42
2021-12-14 11:33:13 +01:00
Will Browne 155487bfb0 Plugins: Add typed models for frontend settings data sources and panels (#42062)
* add model for data source

* add model for panels

* add omitempty

* make consistent with main

* dont emit bools

* resolve conflicts

* remove file

* remove file

* update field name

* always pass jsonData

* minify the changes

* remove dupe line
2021-12-14 11:16:13 +01:00
Will Browne 6c4555265a Plugins: Update client to use SDK resource contract (#42888)
* client uses sdk resource handler

* apply pr feedback
2021-12-14 11:15:49 +01:00
Timur Olzhabayev daaab0d88c chore(changelog): add correct cve number [CI SKIP] (#43027) 2021-12-14 11:04:47 +01:00
Erik Sundell 043680371f add all new es metrics (#43034) 2021-12-14 10:12:39 +01:00
Scott Lepper 6ae8f23f32 Chore: update plugin-ci image (#43062) 2021-12-13 14:24:32 -08:00
malcolmholmes 4a4d076bb1 Build: Still auto-publish non-release artifacts (#43021)
* Still auto-publish non-release artifacts

* Add version to prerelease bucket path
2021-12-13 19:25:59 +00:00
Yuriy Tseretyan 35b0067650 Populate missing UID of provisioned data source only for new records (#42999)
* defer updating empty UID to insert command
* change logging to use the command
2021-12-13 14:14:39 -05:00
Yuriy Tseretyan b63595b47f Alerting: fix sqlstore.GetFolderByTitle to search for folder (#42898)
* a test to reproduce the bug
2021-12-13 13:59:20 -05:00
kay delaney 28eeb7662c Dashboard: Remove "flash" of grid placeholder when moving panel (#43029) 2021-12-13 16:27:08 +00:00
renovate[bot] 12d7c98932 Update dependency @rollup/plugin-node-resolve to v13.1.1 (#43037)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-13 16:12:35 +00:00
renovate[bot] 1562ba85c4 Update dependency @visx/shape to v2.4.0 (#42991)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-13 16:12:12 +00:00
Gilles De Mey 3eae0db7ce fix: make state duration column wider (#43044) 2021-12-13 16:57:15 +01:00
Ieva 2ef071e728 log provisioning errors (#43041) 2021-12-13 16:50:02 +01:00
Serge Zaitsev f5802878f1 Chore: Move remaining web framework code to pkg/web, remove macaron binding module (#43018)
* remove macaron binding dependency

* completely purge macaron binding

* move everything to pkg/web

* remove non-go files from pkg/web

* clean up leftovers of macaron imports

* make linter happy
2021-12-13 15:56:14 +01:00
Yuriy Tseretyan 1db9b1e6a9 Improve bridge for Alertmanager logger (#42958)
* Implement go-kit/log.Logger for internal logger.
2021-12-13 09:41:53 -05:00
renovate[bot] a10708713c Update dependency @reduxjs/toolkit to v1.7.0 (#43036)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-13 14:41:27 +00:00
renovate[bot] e5a990a14f Update dependency @popperjs/core to v2.11.0 (#42396)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-13 14:40:13 +00:00
renovate[bot] 0432ef2943 Update dependency @visx/scale to v2.2.2 (#42990)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-13 14:03:52 +00:00
Piotr Jamróz cf2063f19a Select: Infer dropdown menu position (#42446)
* Infer dropdown menu position when using asynchronously loaded options

* Infer position only when the menu is opened when the component is created

* Add link to react-select bug

* Update docs
2021-12-13 14:59:51 +01:00
renovate[bot] f9a8e41710 Update dependency @rushstack/node-core-library to v3.44.2 (#42756)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-13 13:58:07 +00:00
Torkel Ödegaard 0e88f5db85 AppPlugins: Support app plugins with only default nav (#43016) 2021-12-13 14:06:15 +01:00
kay delaney 597148f23b Dashboards: Use IntersectionObserver to manage lazy loading of panels (#42834) 2021-12-13 12:42:33 +00:00
Dominik Prokop 12619065a4 Dependencies: Bump monaco to 0.31.0 (#43022) 2021-12-13 13:21:50 +01:00
Matthew Jacobson 62c20ebd77 Alerting: Add label and state filters to alert instance components (#42550) 2021-12-13 11:54:36 +01:00
Uchechukwu Obasi 1442052c37 ColorPickerPopover: implement keyboard navigation (#42809)
* ColorPicker: implement new ui

* makes color swatches tabbable

* implements next and previous arrow key navigation

* make colorPickerPopover to close when esc key is pressed

* colorValueEditor: fix colorPopover closing immediately when clicked

* add blue focus ring to both colorSwatch and picker tabs

* refactor color label divs to be more readable

* more cleanup

* refactor color swatches to use buttons instead

* removes left and right arrow navigation to maintain consistency

* makes colors selectable using the keyboard

* use native button instead for mouse and keyboard click hadling

* when a color is clicked, row backgound should change

* add left padding to last row in colorPopover

* when a color is hovered, row backgound should change

* test for colorPickerPopover component

* small typo fix

* ariaLabel over label

* make row background to not change when a color is selected

* style refactor to be standalone

* use HTMLAttributes instead
2021-12-13 11:38:10 +01:00
Dominik Prokop 1809513575 npm/canary: Fix typo in publish script (#43020) 2021-12-13 10:38:31 +01:00
Jack Westbrook da75e4b910 Build: Publish canary packages to NPM registry (#42922)
* ci(packages): replace canary github publishing with npm registry

* chore(drone): refresh yaml config

* docs(packages): remove github package publish explanation
2021-12-13 09:50:19 +01: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
Timur Olzhabayev fd48aee61e chore(release-notes): add release notes for 8.2.3 and 7.5.12 (#42987)
* chore(release-notes): add release notes for 8.2.3 and 7.5.12

* chore(release-notes): add release notes to the index

* chore(release-notes): add release notes to index and changelog

* chore(release-notes): add release notes to index and changelog

* chore(latest.json): bump
2021-12-10 16:52:27 +01:00
renovate[bot] 3811d7d276 Update dependency @swc/helpers to v0.3.2 (#42811)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-10 15:33:50 +00:00
Marcus Efraimsson d6ec6f8ad2 Backport fix to main (#42979)
* fixes

(cherry picked from commit a2c386915ce11b9422f4af8ae181eaa1a22bc5c3)
(cherry picked from commit 06706efbbe)

* fix regex

(cherry picked from commit a259213a3badc9618e969f2c8db0a0143f00faee)
(cherry picked from commit 1d7105c095)

* lint (#42970)

(cherry picked from commit afb9e8e5f3)

Co-authored-by: Will Browne <will.browne@grafana.com>
Co-authored-by: malcolmholmes <42545407+malcolmholmes@users.noreply.github.com>
2021-12-10 16:10:04 +01:00
renovate[bot] adc31f8f43 Update dependency @types/testing-library__jest-dom to v5.14.2 (#42814)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-10 15:05:13 +00:00
renovate[bot] 494b711bfe Update dependency @react-aria/utils to v3.10.0 (#42790)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-10 15:04:45 +00:00
renovate[bot] d39ff81de9 Update dependency @react-aria/interactions to v3.7.0 (#42775)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-10 15:04:09 +00:00
Carl Bergquist f9481527de Macaron: Prevent WriteHeader invalid HTTP status code panic (#42973)
(cherry picked from commit 92005159c89f848ab8b8435e0c8751599e2e8aff)

Co-authored-by: Todd Treece <todd.treece@grafana.com>
2021-12-10 13:54:12 +01:00
Hugo Häggmark e6c24396da Docs: Clarify relative time range overrides (#42930)
* Docs: Clarify relative time range overrides

* Update docs/sources/dashboards/time-range-controls.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/panels/queries.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-12-10 08:41:05 +01:00
achatterjee-grafana 7f03fc1470 fixed image link. (#42956) 2021-12-09 16:51:06 -05:00
achatterjee-grafana d2073580be fixed image links, also two broken relfrefs for alerting. (#42954) 2021-12-09 15:46:38 -05:00
natellium c6c82912e7 Add user essentials issues directly to project (#42944)
To automate part of our escalations flow, we'd like to automatically add issues with the oss-user-essentials label to our project.
2021-12-09 19:25:33 +01:00
Gábor Farkas a4cc1f6b39 loki: alerting: handle curly-braces-style variables (#42933) 2021-12-09 15:16:01 +01:00
Ivana Huckova 2655be61b6 Prometheus: Interpolate curly brackets syntax variable (#42927) 2021-12-09 14:37:24 +01:00
malcolmholmes de6148e5f1 Build: allow building releases from other repositories (#42914)
* Allow building from other repositories

* Upgrade grabpl

* Update drone.yml
2021-12-09 13:09:17 +00:00
Gábor Farkas 096c248887 explore: store failed queries too (#42516)
* explore: store failed queries too

* fixed test
2021-12-09 14:00:50 +01:00
Gábor Farkas 3232ae08c0 loki: removed unused variable (#42909) 2021-12-09 13:16:52 +01:00
Torkel Ödegaard d76dd7d14b LogsPanel: Show message and actions if panel cannot visualize data (#42878) 2021-12-09 11:46:24 +01:00
Ivana Huckova e555221523 Prometheus: Fix running of exemplar queries for non-histogram metrics (#42749)
* Prometheus: Fix running of exemplar queries for non-histogram mestrics

* Fix test

* Refactor based on review suggestions
2021-12-09 11:30:23 +01:00
Timur Olzhabayev 984d26ce86 chore(pr-actions): remove milestone when pr is closed (#42895)
* chore(pr-actions): remove milestone when pr is closed without being merged

* Update .github/workflows/pr-commands-closed.yml

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-12-08 18:58:17 +01:00
Ryan McKinley 1bde2307ed Dashlist: options cleanup (#42850) 2021-12-08 08:42:45 -08:00
Ikko Ashimine 672693ae4e Field: fix typo in fieldOverrides.ts (#42885)
formating -> formatting
2021-12-08 15:04:58 +00:00
Zoltán Bedi 328b922a58 Chore: Upgrade yarn and editor sdks (#42847) 2021-12-08 14:40:24 +01:00
Torkel Ödegaard 8ca36b76cf Select: Fix issue with placeholder and auto width (#42851)
* Select: Fix issue with placeholder and auto width

* Fixed lint issue
2021-12-08 14:05:13 +01:00
Torkel Ödegaard 8828d5e8d7 BarChart: Use new data error view component to show actions in panel edit (#42474) 2021-12-08 11:45:56 +01:00
Hugo Häggmark a0333c1545 Navigation: fix navigation when appSubUrl is configured (#42863)
* Navigation: fix navigation when appSubUrl is configured

* Update public/app/core/components/NavBar/NavBarItem.tsx

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>

* Chore: changes after PR comments

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2021-12-08 10:42:08 +01:00
Hugo Häggmark bb17193ce5 Variables: Adds user interaction reports (#42802)
* Variables: Adds user interaction reports

* Chore: updates after PR feedback
2021-12-08 10:11:01 +01:00
Hugo Häggmark 7a99b067ef Variables: Fix repeating panels for on time range changed variables (#42828) 2021-12-08 08:11:52 +01:00
Ryan McKinley e9d2b25db3 Runtime: remove updateLocation from window context (#42857) 2021-12-07 20:01:35 -08:00
Will Browne fb05f253d4 update release notes (#42848) 2021-12-07 19:24:45 +02:00
Dimitris Sotirakis c798c0e958 Security: Fix directory traversal issue (#42846)
* security: fix dir traversal issue

(cherry picked from commit 00e38ba555)

* Improve comments and error message.

Co-authored-by: Kyle Brandt <kyle@grafana.com>
2021-12-07 19:15:53 +02:00
Isabella Siu a2ad0a0fb6 CloudMonitor: Iterate over pageToken for resources (#42546) 2021-12-07 08:54:50 -05:00
Erik Sundell c3208c1850 allow search queries without dimensions (#42800) 2021-12-07 12:43:01 +01:00
renovate[bot] 39ac11d300 Update dependency @kusto/monaco-kusto to v4.1.2 (#42821)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-07 11:33:37 +01:00
James D beb3a8f02d Azure Monitor: Added Microsoft.Cdn/profiles to supported namespace list (#42745)
* Added Microsoft.Cdn/profiles to Azure Monitor Plugin

Microsoft.Cdn/profiles is the Azure Front Door Standard/Premium resource which is not present in the supported namespaces. I would like to use this with Grafana.

* Azure Monitor: Added CDN WAF namespace

Added Microsoft.Cdn/cdnwebapplicationfirewallpolicies
Ensured both Microsoft.Cdn/cdnwebapplicationfirewallpolicies and Microsoft.Cdn/profiles are available in all azure clouds
2021-12-07 10:31:31 +01:00
Dominik Prokop 826b3bfd52 StateTimeline: Fix toolitp not showing when for frames with multiple fields (#42741)
* StateTimeline: Fix toolitp not showing when for frames with multiple fields

* Update public/app/plugins/panel/state-timeline/StateTimelinePanel.tsx

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>

* Update public/app/plugins/panel/state-timeline/StateTimelinePanel.tsx

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>

* Update public/app/plugins/panel/state-timeline/StateTimelinePanel.tsx

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-12-07 10:27:20 +01:00
renovate[bot] c2e2c658ce Update dependency @opentelemetry/exporter-collector to v0.25.0 (#42395)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-07 09:58:43 +01:00
Jack Westbrook 36b0cb64fd Grafana Toolkit: Prevent installation of outdated FE dependencies (#42663) 2021-12-07 09:56:56 +01:00
renovate[bot] 0bd30c8256 Update dependency @testing-library/jest-dom to v5.16.1 (#42795)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-07 09:56:39 +01:00
renovate[bot] 62465a9048 Update dependency @react-types/shared to v3.10.0 (#42792)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-07 09:50:40 +01:00
Jean-Philippe Quéméner e70cdb3f49 Alerting: add documentation about alertmanager contactpoint support (#42799) 2021-12-07 09:04:47 +01:00
Gábor Farkas 6686f8c345 loki: rename ResponseModel to QueryModel (#42794) 2021-12-07 07:57:52 +01:00
Nathan Marrs 2af5ad4764 Canvas: use name as UID (#42696) 2021-12-06 21:04:58 -08:00
Ashley Harrison a345b06095 Chore(dependencies): Tidy up deps in our packages (#42085)
* Chore(dependencies): Tidy up deps in root package

* Tidy up dependencies in @grafana/data

* Tidy up dependencies in @grafana/e2e

* Tidy up @grafana/e2e-selectors packages

* Tidy up packages in @grafana/runtime

* tidy up packages in @grafana/ui

* tidy up packages in jaeger-ui-components

* Readd regenerator-runtime in @grafana/data
2021-12-06 17:32:55 +00:00
renovate[bot] d8d009ecce Update dependency @kusto/monaco-kusto to v4.1.2 (#42387)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-06 17:09:28 +01:00
Zoltán Bedi b82663b87b chore: Add renovate to the ignore list (#42791)
* chore: Add renovate to the ignore list

It won't flag renovate pr's as external

* Update .github/pr-commands.json
2021-12-06 16:40:40 +01:00
renovate[bot] d5f63ff7bd Update dependency @types/d3 to v7.1.0 (#42473)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-06 16:35:48 +01:00
Erin Noe-Payne 4d5e39abff Analytics: Add user id tracking to google analytics (#42763) 2021-12-06 16:34:19 +01:00
renovate[bot] 8318fab960 Update dependency @types/papaparse to v5.3.1 (#42538)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-06 15:04:15 +00:00
malcolmholmes 6a5416bcec Build: Correct syntax for directing release builds (#42789) 2021-12-06 15:03:44 +00:00
William Assis eab0ba8716 Analytics: RudderStack custom URLs to fetch SDK and Config (#41988)
* Add config options to provide custom URL to fetch Rudderstack SDK and Config

* Add new entries to defaults.ini

* Update docs
2021-12-06 09:42:29 -05:00
malcolmholmes b6818718e9 Build: don't run release builds on grafana/grafana repo (#42785) 2021-12-06 14:30:13 +00:00
Ashley Harrison 0388082768 Update SearchItem.tsx (#42783) 2021-12-06 14:14:56 +00:00
Giordano Ricci 7c3565379a Elasticsearch: Fix fastpass A11y issues (#42657)
* Add labels to Date Histogram settings fields

* Add labels to Terms settings fields

* Add labels to Filters settings fields

* Add labels to Geo Hash Grid settings fields

* Add labels to Histogram settings fields

* Add labels to Percentiles settings fields

* Add labels to Moving Avg settings fields

* Add labels to Bucket Script settings fields
2021-12-06 13:00:10 +00:00
Hugo Häggmark 73b7485630 Variables: Fix so queryparam option works for scoped variables (#42742)
* Variables: Fix so queryparam option work for scoped variables

* Chore: update after PR comments
2021-12-06 12:44:28 +01:00
renovate[bot] 0a4cc54a3b Update dependency @types/slate-plain-serializer to v0.7.1 (#42539)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-06 11:58:43 +01:00
Jack Westbrook 776d796bcb Grafana UI: Bump storybook to 6.4.4 (#42634)
* chore(storybook): bump dependencies to 6.4.4

* chore(yarn): update packageExtensions to match latest storybook

* fix(storybook): get webpack builds to pass

* fix(storybook): theme switching works in docs

* fix(storybook): use text logo so accessibility link doesnt break layout
2021-12-06 11:15:53 +01:00
Hugo Häggmark 769c82cf66 Variables: Adds drag and drop in variables list (#42503)
* Variables: adds drag and drop in variables list

* Refactor: fixes after PR comments

* Chore: updates after PR comments

* Refactor: adds styles during dragging

* Docs: update doc

* Chore: pushing Drone
2021-12-06 10:36:58 +01:00
Zoltán Bedi fdc7eef0f4 Add grafana/experimental package (#42289)
* Add grafana/experimental package

* CloudWatch: Use experimental for components

* Use canary version of experimental

* Update sort order
2021-12-06 09:37:54 +01:00
Ryan McKinley d41044bd8e Runtime: support driving grafana app from the console (#42762) 2021-12-06 07:42:35 +01:00
Maria Alexandra e468fcf518 Navigation: Implement Keyboard Navigation (#41618)
* Navigation: Start creating new NavBarMenu component

* Navigation: Apply new NavBarMenu to NavBarNext

* Navigation: Remove everything to do with .sidemenu-open--xs

* Navigation: Ensure search is passed to NavBarMenu

* Navigation: Standardise NavBarMenuItem

* This extra check isn't needed anymore

* Navigation: Refactor <li> out of NavBarMenu

* Navigation: Combine NavBarMenuItem with DropdownChild

* use spread syntax since performance shouldn't be a concern for such small arrays

* Improve active item logic

* Ensure unique keys

* Remove this duplicate code

* Add unit tests for getActiveItem

* Add tests for NavBarMenu

* Rename mobileMenuOpen -> menuOpen in NavBarNext (since it can be used for mobile menu or megamenu)

* just use index to key the items

* Use exact versions of @react-aria packages

* Navigation: Make the dropdown header a NavBarMenuItem

* Navigation: Stop using dropdown-menu for styles

* Navigation: Add react-aria relevant packages

* Navigation: Refactor NavBarDropdown to support react aria

* Navigation: apply keyboard navigation to NavBar component

* Navigation: UseHover hook for triggering submenu on navbar

* Navigation: rename testMenu component to NavBarItemButton

* WIP

* some hacks

* Refactor: clean up keybinding events

* Navigation:  render subtitle on item menu and disable it

* Navigation: Adds react-aria types (#42113)

* Refactor: refactor out to NavBarItemWithoutMenu

* Refactor: cleaning up stuff

* Refactor: comment out unused code

* Chore: Removes section and uses items only

* Chore: fix NavBarNext

* Chore: adds tests

* Refactor: minimize props api

* Refactor: various refactors

* Refactor: rename enableAllItems

* Refactor: remove unused code

* Refactor: fix clicking on menuitems

* Refactor: use recommended onAction instead

* Navigation: Fix a11y issues on NavBar

* Navigation: Fix a11y navBar Next

* Navigation: Remove unnecessary label prop, use link.text instead

* Apply suggestions from code review

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>

* Apply unit tests suggestions from code review

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

* Update react-aria/menu package to latest version and apply PR suggestion

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2021-12-06 06:58:17 +01:00
Connor Lindsey bf744698a1 Update service graph docs (#42604)
* Update service graph docs

* Add link to agent configuration
2021-12-03 10:14:39 -07:00
Ashley Harrison cc9151d382 Dependencies: Jest 27 (#42681)
* Update jest monorepo

* Update version of marked so it doesn't throw an error, set testEnvironment

* Fix some unit tests

* Remove all these tests that aren't actually working...

* use spyOn instead of mocking the whole module

* Fix linting

Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-03 17:09:25 +00:00
Uchechukwu Obasi cf9aef9168 ButtonSelect: add react-aria for better accessibility (#42700) 2021-12-03 16:48:04 +01:00
Ivana Huckova 21fe78302b Prometheus: Fix passing of custom params when running queries (#42728)
* Prometheus: Fix passing of custom params

* Remove prints
2021-12-03 16:28:05 +01:00
Ivana Huckova 8722c19cc3 A11y: Fix prometheus issues (#42671) 2021-12-03 14:15:25 +01:00
Ivana Huckova 698f452e0d A11y: Add missing aria labels in Loki QueryEditor (#42664)
* Loki: Add missing aria-label

* Update text

* Update text
2021-12-03 14:14:51 +01:00
Ivana Huckova 64cf0aa813 Loki: Fix adding of ad hoc filters for queries with parser and line_format expressions (#42590)
* Loki: Fix ad hoc filtewrs for queries with line_format

* Fix tests
2021-12-03 14:11:43 +01:00
gotjosh bdab1d1f1f Fix flaky tests in several notifiers (#42668)
* Fix flaky tests in several notifiers

- Non-mocked time in sensu go tests
- Close server in Slack tests
- Use a mutex for writing responses in the fake slack server

* Remove mutex at the fake slack server
2021-12-03 12:34:31 +00:00
Oliver Frye 32f2a75c44 Explore: Fix ANSI dim style being unreadable in dark mode (#41226)
* Explore: Fix ANSI dim style being unreadable in dark mode

* use GrafanaTheme2 instead of opacity

* tweak code and comment

* fix existing tests and add new test for ANSI dim code

* fix failing test
2021-12-03 11:35:16 +00:00
Erin Noe-Payne f30debf7ad TraceView: Fixes virtualized scrolling when trace view is opened in right pane in Explore (#42480) 2021-12-03 11:09:55 +01:00
kay delaney f104741448 BarGauge: Unfilled area shown with data links (#42676)
Closes #37623
2021-12-03 10:08:42 +00:00
George Robinson c932dc959c Alerting: Add Ref ID to DatasourceNoData and DatasourceError alerts (#42630) 2021-12-03 09:55:16 +00:00
Alex Khomenko 9c2126c002 Dashlist: use defaultChecked for IconToggle (#42642) 2021-12-03 09:31:41 +01:00
Yuriy Tseretyan cdfb2d02d5 add maildev to docker blocks (#42661) 2021-12-02 19:45:56 -05:00
Nathan Marrs e07abd76c0 Canvas: refactor layer editor (#42562)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-12-02 15:54:45 -08:00
idafurjes c80e7764d8 Chore: Remove Dispatch and AddHandler (#42603)
* Remove Dispatch

* Remove context.TODO()

* Remove AddHandler and Dispatch
2021-12-02 18:08:59 +01:00
Travis Patterson e79fe8e84e recorded queries - add recorded queries to the enterprise configuration (#42613)
* add recorded queries to the enterprise configuration

* change name to default_
2021-12-02 09:58:55 -07:00
Marcus Efraimsson 7c8410c057 Docker: Upgrade changelog v8.2.6 (#42677) 2021-12-02 17:54:16 +01:00
Grot (@grafanabot) e94adfd2c8 ReleaseNotes: Updated changelog and release notes for 8.2.6 (#42655)
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-12-02 17:09:13 +01:00
malcolmholmes a78b90cb95 Fix windows build in main (#42665) 2021-12-02 15:57:44 +00:00
gotjosh 67461086de Docs: Dedicated section for Grouping in Alerting (#42641)
* Docs: Dedicated section for Grouping in Alerting

* Update docs/sources/alerting/unified-alerting/notification-policies.md

Co-authored-by: Armand Grillet <2117580+armandgrillet@users.noreply.github.com>

* Update docs/sources/alerting/unified-alerting/notification-policies.md

Co-authored-by: Armand Grillet <2117580+armandgrillet@users.noreply.github.com>

* Update docs/sources/alerting/unified-alerting/notification-policies.md

Co-authored-by: Armand Grillet <2117580+armandgrillet@users.noreply.github.com>

* Update docs/sources/alerting/unified-alerting/notification-policies.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/alerting/unified-alerting/notification-policies.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Review suggestions

Co-authored-by: Armand Grillet <2117580+armandgrillet@users.noreply.github.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-12-02 15:51:49 +00:00
David Parrott a53b78df0c Alerting: improve error on failure to remove query referenced by legacy alerting (#42169)
* Improve error and add test

* praise the linter!

* pr feedback

* guard against nil

* getters and setters

* Use IsEnabled instead of accessing struct
2021-12-02 07:41:24 -08:00
Andres Martinez Gotor e061cbd25b CloudWatch: fix duplicated IDs (#42658) 2021-12-02 16:11:23 +01:00
Uchechukwu Obasi ec994c3e1f Drawer: apply react-aria for a11y support (#42571)
* Drawer: adds focus trapping to widget

* add useOverlay hook to drawer

* fixes drawer closing when clicked within
2021-12-02 15:13:44 +01:00
Robby Milo 2ead937a26 Update aws-authentication.md (#42558) 2021-12-02 08:41:07 -05:00
Dimitris Sotirakis dc627a3d47 Remove e2e tests on enterprise2 (#42640) 2021-12-02 14:55:23 +02:00
Ivana Huckova 5cbb4a0a2d Prometheus: Interpolate template variables in interval (#42637)
* Interpolate interval

* Add test
2021-12-02 13:32:02 +01:00
Erik Sundell d1c7db5365 CloudWatch: Make sure MatchExact flag gets the right value (#42621)
* use value prop instead of depracted checked prop

* make sure props are not changed for all tests
2021-12-02 13:31:23 +01:00
Marcus Efraimsson 54fa7b57fe Chore: Fix flaky serverlock integration test (#42633) 2021-12-02 12:53:21 +01:00
Hugo Häggmark 4080bcbd6c E2E: revert recordings (#42636) 2021-12-02 12:52:31 +01:00
Ivana Huckova d28e7b6185 Explore: Fix timezone not changing for graph and table (#42430)
* Pass timezone to graph in Explore

* Fix timezone issues for table

* Fix type error

* Update public/app/features/explore/TableContainer.test.tsx

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Replace UTC with InternalTimeZones

* Update CEST to cest

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-12-02 12:07:23 +01:00
Marcus Andersson feea6e456c Chore: updated latest.json to 8.3.0 (#42631) 2021-12-02 11:43:50 +01:00
Hugo Häggmark bde01e8771 E2E: adds recordings (#42622) 2021-12-02 10:21:31 +01:00
Piotr Jamróz bb24e8d578 Chore: Report frontend metrics for JS/CSS load time (#42421)
* Report frontend metrics for js/css load time

* Add FCP metric

* Change comment

* Simplify reporting frontend metrics
2021-12-02 09:34:39 +01:00
Erik Sundell ee9ca20f1f CloudWatch: Fix broken queries for users migrating from 8.2.4/8.2.5 to 8.3.0 (#42611)
* move migration logic to a higher version number

* bump version in test
2021-12-02 07:36:18 +01:00
achatterjee-grafana ae655f2675 Docs alerting doc updates (#42262)
* Replaced "Grafana 8 alerting" with "Grafana alerting". Added support matrix for Grafana alerting.

* Few more changes and added deprecation notice to legacy alerting landing page.

* Added more content from Yuri's PR.

* Ran prettier.

* Added code review changes.

* One more change.

* Fixed linked texts.
2021-12-01 17:43:44 -05:00
Petros Kolyvas 248c71c903 Docs: Grafana 8.3 Release Docs - Minor updates (#42609)
* missing panel quick descriptions

* Panel rel ref fix

* AWS Cloudwatch Metrics to Whats New
2021-12-01 21:06:01 +01:00
idafurjes 9880a843ed Add context to notifications (#42578) 2021-12-01 17:56:08 +01:00
Joan López de la Franca Beltran 5183cc4dc4 Store 'alertmanager_configuration' as JSON string instead of raw bytes (#42443) 2021-12-01 17:49:57 +01:00
Petros Kolyvas 41917c1473 Docs: What's new 8.3 with additions and image links (#42551)
* OSS images

* Enterprise images

* Adds the link to the what's new page

* Updated Alerting header style

* Prettier fix

* Update docs/sources/whatsnew/whats-new-in-v8-3.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/whatsnew/whats-new-in-v8-3.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/whatsnew/whats-new-in-v8-3.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-12-01 17:29:27 +01:00
Petros Kolyvas 7b1aee5220 Docs: New documentation for the Grafana 8.3 Candlestick panel (#42491)
* Initial scaffolding

* intro sentence

* Option scaffolding

* More complete candlestick documentation

* Add candlestick to visualization list

* Clarifying the opening sentence.

* Prettier fix for Candlestick

* Update docs/sources/visualizations/candlestick.md

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>

* Update docs/sources/visualizations/candlestick.md

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>

* Updated to clarify hollow candlestick behaviour

* Prettier run manually

* Update docs/sources/visualizations/candlestick.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/visualizations/candlestick.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/visualizations/candlestick.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/visualizations/candlestick.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-12-01 17:09:02 +01:00
idafurjes d993b12415 Add interface Tracer, add Opentelemetry (#41963)
* Add interface Tracer, add Opentelemetry

* Fix lint

* Fix failing tests and return error if config not parsed fo opentelemetry

* Update defaults.ini

Add comment with jaeger url

* go mod tidy

* Remove comments that are not needed

* Move OpentracingSpan to tracing.go

* Add opentelemetry to sample.ini
2021-12-01 17:05:08 +01:00
Jesse Weaver be578e5700 Improve handling of old/slow-to-start remote renderer (#40492)
* Assume the remote renderer is old if it returns 404 to the version endpoint

* Retry fetch of remote image renderer version on failure

Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>
2021-12-01 08:58:43 -07:00
Ashley Harrison a365dcca5b Manage dashboards: Can now delete empty folders (#42527)
* Manage dashboards: Can now delete empty folders

* Split hasChecked out into a separate function

* Update modal text
2021-12-01 14:53:41 +00:00
idafurjes e6123bc3ef Replace AddHandler with AddHandlerCtx in tests (#42585) 2021-12-01 15:43:31 +01:00
Kyle Brandt 2e3fd9d659 Bra: Run wire re-gen on code change (attempt #2) (#42582) 2021-12-01 09:26:45 -05:00
Mitch Seaman d7861f62a9 Update recorded-queries.md (#42548)
Update formatting to make a quote block instead of a bold greater-than symbol

> Added backport label, assuming the content is for 8.3 release.

Thanks @achatterjee-grafana :)
2021-12-01 15:12:32 +01:00
gotjosh 5b64c4f684 Alerting: Fix panic while proxying 4xx responses of requests to cortex/loki (#42570)
Fixes a panic that would ocurr as we proxy 4xx responses. When this happens and the content type of the response is JSON we try to check if the response has a "message" key. Then, we assume that the key will contain a value of string but we don't take into account that this value can potentially be `null`.

This adds a type assertion check to to this assumption so that we can keep the original JSON body as the response if we're unable to extract an `message`.
2021-12-01 13:53:29 +00:00
Grot (@grafanabot) c847c0382d ReleaseNotes: Updated changelog and release notes for 8.3.0 (#42524)
* ReleaseNotes: Updated changelog and release notes for 8.3.0

* added index link.

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2021-12-01 09:52:09 -04:00
Petros Kolyvas 5fd1ce0fe9 Docs: Adding panel suggestions initial documentation for 8.3 (#42488)
* Adding panel suggestions initial documentation for 8.3

* Update docs/sources/panels/add-a-panel.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/visualizations/_index.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-12-01 14:45:28 +01:00
Leonard Gram c6021c8b4f Build: building a local docker image using build-docker-dev no longer supported (#42563) 2021-12-01 14:34:28 +01:00
Hugo Häggmark 0a50de14d3 E2E: forcing dashboard title type (#42574) 2021-12-01 13:54:22 +01:00
Dominik Prokop fa930e7dbd KeybindingSrv: Prevent dashboard save modal when dashboard cannot be saved (#42505) 2021-12-01 13:47:47 +01:00
Piotr Jamróz e170073aff A11y: Add aria-label and placeholder to Timeout & Access fields in HTTP Settings (#42559)
* Add aria label and placeholder to timeout input

* datasource settings: improved a11y

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2021-12-01 13:32:46 +01:00
Torkel Ödegaard 28b619a40e Kiosk: Fixes graph zoom issue clearing kiosk mode (#42501) 2021-12-01 12:51:52 +01:00
Yuriy Tseretyan 9139f61105 Alerting: Update alert rule migration to use expanded queries (#42493)
* move targetData to target

* use constants instead of literals.

* Update comments and add tests

Co-authored-by: gotjosh <josue.abreu@gmail.com>
2021-12-01 11:45:27 +00:00
gotjosh 357e9ed1ea Alerting: Fix Annotation Creation when the alerting state changes (#42479)
* Fix Annotation creation
- Remove validation of panelID, now annotations are created irrespective on whether they're attached to a panel or not.
- Alwasy attach the annotation to an AlertID

* Fix annotation creation

* fix tests
2021-12-01 11:04:54 +00:00
Eric Leijonmarck 55ce03bd0c Serviceaccounts: Add serviceaccount docs (#41712)
* Adds serviceaccount docs

* WIP

* wip

* Update docs/sources/manage-users/serviceaccount/serviceaccount.md

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Update docs/sources/manage-users/serviceaccount/serviceaccount.md

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Update docs/sources/http_api/serviceaccount.md

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Update docs/sources/http_api/serviceaccount.md

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Update docs/sources/http_api/serviceaccount.md

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Update docs/sources/http_api/serviceaccount.md

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* updates

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-12-01 10:16:56 +00:00
Marcus Efraimsson d71cd65dbc Chore: Update developer guide with instructions building from Windows (#42390)
In addition, removess copying of local directory in Dockerfile since that directory 
normally doesn't exist.
2021-12-01 10:34:00 +01:00
Piotr Jamróz caf859f498 Add missing aria labels (#42532) 2021-12-01 10:16:09 +01:00
Jesse Weaver 143bc5c4ea Allow non-FGAC fallback to server admin role (#42175) 2021-11-30 16:26:05 -07:00
Mitch Seaman b7e1f5f9ce add links between encryption docs (#42549) 2021-11-30 23:49:42 +01:00
Sofia Papagiannaki 9c7b52fd36 Alerting: Fix API specification (#42282)
* Alerting: Fix API specification
2021-11-30 20:55:54 +01:00
François Dautrême 1d4b2593ec AnnoListPanel: Fix interpolation of variables in tags (#42318) 2021-11-30 13:41:03 -05:00
malcolmholmes 4d55c6fe51 Build: publish artifacts to correct GCS buckets for main and release builds (#42537)
* Fix main build (deb downloads)

* Direct cdn assets to correct bucket
2021-11-30 16:40:24 +00:00
renovate[bot] 4f2ae190a2 Update dependency @rushstack/node-core-library to v3.43.2 (#42429)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-30 16:30:52 +00:00
renovate[bot] e89c9b9194 Update dependency @types/angular to v1.8.3 (#42471)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-30 16:26:18 +00:00
Gábor Farkas 17e12dc784 influxdb: influxql: improve the handling of metadata query errors (#42500) 2021-11-30 17:17:40 +01:00
Uchechukwu Obasi 0cde13d51f ColorPickerPopover: apply react-aria for a11y support (#42444)
* add focus trapping to colorPickerPopover

* make popover exit using esc key

* fix colorPickerPopover to be tabbable

* fix focus escape in colorPickerPopover

* revert to focus trap fix
2021-11-30 16:26:50 +01:00
Gábor Farkas 2ce1cf22ef devenv: disable managed-alerts for datasources (#42295) 2021-11-30 15:37:03 +01:00
ying-jeanne e13e6a7bd7 fix error code for delete folder (#42470) 2021-11-30 21:07:04 +08:00
Alex Khomenko 4e8b97b8ed CI: Temporarily disable panel edit e2e test (#42517) 2021-11-30 13:46:23 +01:00
malcolmholmes 9c0a2a19fd Package release before publishing (#42218)
* Package separately to publish

* Fix interpolation

* Windows format envvars

* More descriptive msg

* Won't publish from here

* Resolve docker issues in PR build

* Rename package docker step

* Correct npm release JSON structure
2021-11-30 10:53:07 +00:00
Joan López de la Franca Beltran 690ffdff56 Settings: Fix handling (#42497)
* Settings: Fix handling
2021-11-30 11:28:52 +01:00
Erik Sundell bab78a9e64 CloudWatch: Add support for AWS Metric Insights (#42487)
* add support for code editor and builder

* refactor cloudwatch migration

* Add tooltip to editor field (#56)

* add tooltip

* add old tooltips

* Bug bash feedback fixes (#58)

* make ASC the default option

* update sql preview whenever sql changes

* don't allow queries without aggregation

* set default value for aggregation

* use new input field

* cleanup

* pr feedback

* prevent unnecessary rerenders

* use frame error instead of main error

* remove not used snapshot

* Use dimension filter in schema picker  (#63)

* use dimension key filter in group by and schema labels

* add dimension filter also to code editor

* add tests

* fix build error

* fix strict error

* remove debug code

* fix annotation editor (#64)

* fix annotation editor

* fix broken test

* revert annotation backend change

* PR feedback (#67)

* pr feedback

* removed dimension filter from group by

* add spacing between common fields and rest

* do not generate deep link for metric queries (#70)

* update docs (#69)

Co-authored-by: Erik Sundell <erik.sundell87@gmail.com>

* fix lint problem caused by merge conflict

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-11-30 10:53:31 +01:00
Marcus Andersson 2a50c029b2 Build: Increased the memory for the node process in the frontend build. (#42499) 2021-11-30 10:50:35 +01:00
renovate[bot] 34f6873d2d Update dependency @testing-library/user-event to v13.5.0 (#42465)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-30 10:45:21 +01:00
Ivan Anselmi cf3105e5be MSSQL: Change regex to validate Provider connection string (#40248)
* Change the regex to allow to specified other connection attribute for MSSQL connection like ApplicationIntent property

* Docs update

* docs update

* some tests added

* formatting

* Change the regex to allow to specified other connection attribute for MSSQL connection like ApplicationIntent property

* Docs update

* docs update

* some tests added

* formatting

* docs and formatting

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-11-30 09:28:48 +01:00
Petros Kolyvas ce0cf331e0 Docs: First GeoJSON update to docs for v8.3 (#42394)
* First GeoJSON update to docs for v8.3

* Minor tweaks to views

* More language tweaks to views

* Removed alpha functionality from docs

* Added layer order and removed alpha functionality notes

* Updated marker shapes doc text with additional info

* Update docs/sources/visualizations/geomap.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/visualizations/geomap.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/visualizations/geomap.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/visualizations/geomap.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/visualizations/geomap.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/visualizations/geomap.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/visualizations/geomap.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/visualizations/geomap.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/visualizations/geomap.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/visualizations/geomap.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Update docs/sources/visualizations/geomap.md

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>

* Finishing touches

Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
2021-11-30 01:30:20 +01:00
Yuriy Tseretyan 005c8f8894 Alerting: Disable unified alerting by default in Enterprise Grafana (#42476)
* fallback to enable false if Enterprise is true

* anyBoolean
2021-11-29 20:51:15 +01:00
Torkel Ödegaard 1f8336e5fe DataSourceVariable: Fixes issue repeating panels by data source variable (#42462) 2021-11-29 20:32:18 +01:00
Santiago a21d1e50f1 avoid template execution errors on missing values (#41617) 2021-11-29 15:26:51 -03:00
Dimitris Sotirakis 54ea2ed766 CI: Notify channel on drone yaml changes (#42428)
* Notify on drone yaml changes

* Change secrets

* Remove test notification

* Fix typo
2021-11-29 20:08:13 +02:00
Serge Zaitsev 95831e9be0 Fix: Restore data binding in the create dashboard handler 2021-11-29 19:05:20 +01:00
Victor Marin 42d1a0f32e TooltipPlugin: Remove other panels' shared tooltip in edit panel (#42187) 2021-11-29 19:27:56 +02:00
Will Browne 9c9e79da4f only preload app plugins (#42434) 2021-11-29 18:26:04 +01:00
renovate[bot] 868428528f Update dependency @testing-library/jest-dom to v5.15.1 (#42463)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-29 18:12:47 +01:00
Gilles De Mey db6b71a27b Alerting: fix broken datasource link (#42468) 2021-11-29 17:57:58 +01:00
Ashley Harrison 5eb35606b9 Transformations: Clarify behaviour of Date format (#42436)
* Transformations: Clarify behaviour of `Date format`

* Remove full stop from bullet point
2021-11-29 16:30:07 +00:00
Alexander Emelin 7034173ef5 Live: fix closing ws conns for push endpoints (#42447) 2021-11-29 19:22:42 +03:00
renovate[bot] 98dcac7596 Update dependency @testing-library/dom to v8.11.1 (#42461)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-29 16:22:20 +00:00
renovate[bot] 2c62ab5ceb Update dependency @storybook/addon-knobs to v6.4.0 (#42460)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-29 16:21:04 +00:00
renovate[bot] d5b8522af2 Update dependency @cypress/webpack-preprocessor to v5.10.0 (#42382)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-29 15:58:32 +00:00
renovate[bot] 2550e69cf8 Update dependency @sentry/utils to v6.15.0 (#42433)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-29 15:44:13 +00:00
renovate[bot] 85306ebf7e Update dependency @react-aria/focus to v3.5.0 (#42400)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-29 15:43:06 +00:00
Peter Holmberg 8bf6011450 Alerting: Show full preview value in tooltip (#42445)
* use JSONCell for value

* remove console log and usememo
2021-11-29 16:39:58 +01:00
Ivana Huckova 8d6831f21f Tracing: Refactor span detail logic (#42152)
* Tracing: Update incorrect span fix based on review feedback

* Prometheus: Use this.query for health check

* Revert "Prometheus: Use this.query for health check"

This reverts commit 4c1a6a92a5.
2021-11-29 16:19:56 +01:00
Christopher Moyer 8b34df36c2 Update license restrictions documentation (#41713)
* Update docs/sources/enterprise/license/license-restrictions.md
Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
2021-11-29 16:09:01 +01:00
Torkel Ödegaard c3d0d37bd7 ValueMappings: Fixes issue with regex value mapping that only sets color (#42311)
* ValueMappings: Fixes issue with regex value mapping that only sets color

* Fixed test name
2021-11-29 16:03:13 +01:00
Alexander Zobnin becfd776c3 OAuth: Forward id token to the data source (#42422)
* OAuth: Forward id token to the data source

* Add tests

* Forward id token in legacy API

* Check if id_token is string or not
2021-11-29 15:40:05 +01:00
Tania B 58978dcf96 Encryption: Add usage stats to secrets service (#42437)
* Encryption: Add usage stats to secrets service

* Sort imports
2021-11-29 16:35:15 +02:00
Will Browne e440796cb3 only load CSV when data exists (#42441) 2021-11-29 15:21:18 +01:00
Eric Leijonmarck d997e051c2 AccessControl: Document role display name (#40068)
* docs: role displayname

* Update docs/sources/enterprise/access-control/roles.md

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Update docs/sources/enterprise/access-control/roles.md

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* refactor: update accesscontrol based on fixed roles

* update displayname text

* Update docs/sources/enterprise/access-control/roles.md

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* updated group

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
Co-authored-by: eleijonmarck <eleijonmarck@Erics-MBP.home>
2021-11-29 15:06:10 +01:00
wengelbrecht-grafana e1a3b6a386 Update FieldLookupTransformerEditor.tsx (#42405)
Fixed 2 small spelling mistakes
2021-11-29 14:27:34 +01:00
Peter Holmberg 8692f574c9 Alerting: Prevent folders from being deleted when they contain alerts (#42307) 2021-11-29 14:25:31 +01:00
idafurjes a65e0be110 Replace AddEventListener with AddEventListenerCtx and Publish with PublishCtx (#42284) 2021-11-29 14:23:24 +01:00
Marcus Efraimsson 8927a3ca20 Chore: Query endpoint refactor (#41637)
Get rid of using legacydata.RequestHandler in HTTPServer, /api/tsdb/query and pkg/expr 
with the goal of deprecating /api/tsdb/query and remove it completely eventually. This is 
the first step of cleaning up the HTTP API query endpoint.

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Alexander Emelin <frvzmb@gmail.com>
2021-11-29 14:21:54 +01:00
renovate[bot] 6e8cc426d6 Update babel monorepo (#42381)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-29 12:54:29 +01:00
Ivana Huckova 0b5d7067f9 Prometheus: Fix range variables interpolation for time ranges smaller than 1 second (#42242)
* Prometheus: Fix precision for queries with < 1s timeRange

* Update pkg/tsdb/prometheus/time_series_query.go

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2021-11-29 12:41:23 +01:00
renovate[bot] 40339fe912 Update dependency @monaco-editor/react to v4.3.1 (#42388)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-29 12:35:59 +01:00
idafurjes e20766146a Upgrade build-container to version 1.4.8 (#42373)
* Upgrade build-container to version 1.4.8

* disable lint of mixin

Co-authored-by: Ying WANG <ying.wang@grafana.com>
2021-11-29 12:03:16 +01:00
Gábor Farkas 8508ad79b2 Dashboard: Fix queries for panels with non-integer widths (#42420)
* dashboard: fix non-integer panel widths

* switched to better supported function
2021-11-29 11:49:53 +01:00
Carl Bergquist 3285742196 grafana-mixin: change owner to the hosted-grafana team (#42418)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2021-11-29 11:28:42 +01:00
Peter Holmberg cb7e047c68 Alerting: Fix refresh on legacy Alert List panel (#42322) 2021-11-29 10:22:47 +01:00
Serge Zaitsev d9cdcb550e Chore: Refactor api handlers to use web.Bind (#42199)
* Chore: Refactor api handlers to use web.Bind

* fix comments

* fix comment

* trying to fix most of the tests and force routing.Wrap type check

* fix library panels tests

* fix frontend logging tests

* allow passing nil as a response to skip writing

* return nil instead of the response

* rewrite login handler function types

* remove handlerFuncCtx

* make linter happy

* remove old bindings from the libraryelements

* restore comments
2021-11-29 10:18:01 +01:00
Andres Martinez Gotor 9cbc872f22 CloudMonitoring: Avoid to escape regexps in filters (#41961) 2021-11-29 10:04:36 +01:00
Gábor Farkas adbc5bde72 explore: fix url update inconsistency (#42288) 2021-11-29 10:00:41 +01:00
Nathan Marrs f454a5ce60 Add optional check to fix text dimension runtime error (#42402) 2021-11-28 17:21:22 -08:00
Artur Wierzbicki 1f237d0193 #42174: fix: fill 'field.name' in the auto-added Time field (#42301) 2021-11-26 23:52:01 +04:00
lean.dev 1ee34fb90a Fixing documentation for query caching plugin: steps duplicated (#42392) 2021-11-26 19:15:45 +01:00
gotjosh dd5a2e5128 Alerting: Clear alerting rule evaluation errors after intermittent failures (#42386)
* Alerting: Clear alerting rule evaluation errors after intermittent failures

When an alert transitioned in a way that `alerting -> error -> (alerting|nodata)`, the error provided by the `error` state would never be cleared thus the API and UI would show the health as an error.
2021-11-26 17:58:19 +00:00
idafurjes 725dbf8d95 Chore: Add context to datasource service (#42294)
* Add context to datasource service

* Adjust wire for ShouldBeReported method

* Replace inTransactionCtx
2021-11-26 18:10:36 +01:00
Ashley Harrison 6aa05c5d05 Dependencies: Fix broken renovate config (#42379) 2021-11-26 17:36:23 +01:00
Ashley Harrison 84744aa04f Dependencies: enable minor version updates + turn on batched monthly patch updates (i think) (#42376) 2021-11-26 15:59:01 +00:00
Torkel Ödegaard 9f4aa472cf Select: Fix input cursor position so that it is at the start for single value selects (#41693)
* Select: Fix input cursor position so that it is at the start for single value selects

* Fixing e2e tests

* Fixes cursor issue

* Fixing e2e tests

* e2e fix

* Select: ensure input always overlays singleValue, update pa11y config

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-26 15:38:48 +00:00
Josh Hunt 130386f84b Chore: Fix errant text appearing in AnnotationSettingsList table (#42360) 2021-11-26 13:25:08 +00:00
Torkel Ödegaard 820aa3ac59 Statetimeline/TimeSeries/BarChart: Limit y label width to 40% of visualiation width (#42350) 2021-11-26 14:15:57 +01:00
Andrej Ocenas 802ffa3f03 CloudWatch Logs: Add selected region to autocomplete requests (#42194)
* Add region to get fields query

* Fix and add tests
2021-11-26 13:33:34 +01:00
Josh Hunt 879cdcd0c7 Chore: Refactor isSharedDashboardQuery to narrow type natrually (#42312) 2021-11-26 10:53:08 +00:00
Marcus Andersson 170da29173 Docker: updating and syncing change log for docker hub (#42353)
* Syncing and updating README with docker hub.

* Update packaging/docker/README.md

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>

* Update packaging/docker/README.md

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
2021-11-26 11:49:35 +01:00
Andres Martinez Gotor c15f444296 AzureMonitor: Add Microsoft.Insights/components metric namespace to other clouds (#42349) 2021-11-26 11:48:24 +01:00
Grot (@grafanabot) 2b6c03714c ReleaseNotes: Updated changelog and release notes for 8.3.0-beta2 (#42309)
* ReleaseNotes: Updated changelog and release notes for 8.3.0-beta2

* chore: update index file for release notes

* chore: Add link for 8.2.5

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-11-26 11:44:42 +01:00
Torkel Ödegaard 5c4fd91cd3 BarGauge: Limit title width when name is really long (#42346) 2021-11-26 11:31:28 +01:00
Josh Hunt 62e55f4724 Chore: Refactor QueryRunner to remove type assertions (#42329) 2021-11-26 10:28:13 +00:00
Levente Balogh d862d210e4 chore(latest.json): update the testing version (#42352) 2021-11-26 11:23:13 +01:00
Ashley Harrison 0516ad822b PanelEdit: Query now correctly initializes data source (#42291) 2021-11-26 09:37:19 +00:00
Torkel Ödegaard 1e1403fad1 DashboardExport: Correctly templetatize datasource prop now that is's a ref obj (#42305) 2021-11-26 10:06:41 +01:00
Hugo Häggmark b164ce0c9b E2E: fix verify release script after split (#42341) 2021-11-26 08:43:00 +01:00
idafurjes d2c8b24d72 Upgrade go to version 1.17.2 in ci-build (#42323) 2021-11-25 18:03:42 +01:00
idafurjes ac6867c3bb Chore: Add context to authinfo (#42096)
* Add context to authinfo

* Replace Dispatch with DispatchCtx
2021-11-25 14:22:40 +01:00
nikki-kiga d0c9564e1a Bug: Add checks to Geomap StyleEditor (#42266) 2021-11-25 11:57:21 +01:00
George Robinson 1b26d4d88e Alerting: Create DatasourceError alert if evaluation returns error (#41869)
* Alerting: Create DatasourceError alert if evaluation returns error

* Alerting: Add docs for DatasourceError alert

* Alerting: Fix DatasourceError alert does not have dashboard_uid label

* Alerting: Add break when datasource_uid found

* Alerting: Update TestProcessEvalResults
2021-11-25 11:46:47 +01:00
George Robinson 1e5b0e64ac Alerting: Add comments to ScheduleService interface (#42228) 2021-11-25 10:12:04 +00:00
Torkel Ödegaard 781067ee45 VisualizationSuggestions: Support image & text instead of real previews. Adds suggestions for all non data panels when there are no data (#42074)
* Make suggestion cards support img & text mode instead of only preview

* Generic solution for non data panels

* minor review tweaks
2021-11-25 10:52:01 +01:00
Ashley Harrison a897154017 pally-ci: Ignore version update element (#42249)
* pa11y-ci: Ignore update version element

* Add hideElements to pa11yci-pr.conf.js
2021-11-25 09:51:21 +00:00
George Robinson 2863af3bc3 Alerting: Add docs for DatasourceNoData alert (#42265) 2021-11-25 09:41:55 +00:00
Ashley Harrison 4318448539 News: Now reloads the feed when refreshing the dashboard or changing the time range (#42217) 2021-11-25 09:32:28 +00:00
Sriram 70bc0b86e2 TestDataDB: Raw frame input (#42209)
* test datasource raw-frame scenario added

* typo fix in doc
2021-11-25 09:14:34 +00:00
Derik Evangelista 86a22a914d Table: Add space between values for the DefaultCell (#42246)
fixes #42024
2021-11-25 10:09:09 +01:00
Torkel Ödegaard 75fb1f8be6 Candlestick: Fixes typescript issue in tests (#42274) 2021-11-25 10:07:25 +01:00
matt abrams e447d5a53e fix small typo in UI display language (#42264)
Co-authored-by: Clarity-89 <homes89@ukr.net>
2021-11-25 10:46:17 +02:00
Torkel Ödegaard 12d2b9e997 E2E: Skip running import dashboard test (#42270) 2021-11-25 09:43:24 +01:00
Torkel Ödegaard 070344943c PanelEditor: Present actionable suggestions when panel cannot visualize current data (#42083)
* PanelDataError: Show actions when current panel cannot visualize data

* Fixed so that suggestions tab is opened from action

* Cleanup

* Fixed tests

* Fix tests

* Fixing tests

* Fixed ts issues
2021-11-25 09:41:03 +01:00
nikki-kiga 6a86758f3b NumberInput: Add validation for min max on input (#42254)
* add scalar and number input validation

* add check and warning message
2021-11-24 16:21:26 -08:00
nikki-kiga 207711ead4 Geomap: Add gdev multi layers dashboard (#42252)
* add multi layers panel
2021-11-24 15:20:33 -08:00
Mitch Seaman 5043448769 [Docs] Document FGAC user role assignment (#41797) 2021-11-24 22:50:48 +01:00
Vardan Torosyan 18b5e40d5a Docs: Update the coverage of fine-grained access control (#41398)
* Docs: Update the coverage of fine-grained access control

* Apply suggestions from code review

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>
2021-11-24 21:32:07 +01:00
Ursula Kallio 59b0f534c5 Add concept about Grafana and Grafana Enterprise database encryption (#41853)
* Add concept about Grafana database encryption.
* Add database encryption information for Enterprise.
2021-11-24 21:09:20 +01:00
Isabella Siu dc145a2a25 AzureMonitor: resourcePicker should show resource in the correct subs… (#42170) 2021-11-24 15:06:14 -05:00
Armand Grillet 6523486122 Alerting: Make Unified Alerting enabled by default for those who do not use legacy alerting (#42200)
* update AlertingEnabled and UnifiedAlertingSettings.Enabled to be pointers
* add a pseudo migration to fix the AlertingEnabled and UnifiedAlertingSettings.Enabled if the latter is not defined
* update the default configuration file to make default value for both 'enabled' flags be undefined

Misc
* update Migrator to expose DB engine. This is needed for a ualert migration to access the database while the list of migrations is created.
* add more verbose failure when migrations do not match

Co-authored-by: gotjosh <josue@grafana.com>
Co-authored-by: Yuriy Tseretyan <yuriy.tseretyan@grafana.com>
Co-authored-by: gillesdemey <gilles.de.mey@gmail.com>
2021-11-24 14:56:07 -05:00
Ursula Kallio 1c261aea8e Add Azure Key Vault documentation. (#42257) 2021-11-24 20:48:15 +01:00
Leon Sorokin 24053d83d3 Candlestick: fix auto field mapping & includeAllFields (#42020) 2021-11-24 13:02:53 -06:00
Ursula Kallio 782d5a27fd Document KMS integration part 1 (#41864)
Co-authored-by: Tania B. <yalyna.ts@gmail.com>
2021-11-24 19:10:49 +01:00
Peter Holmberg a5436b4435 Alerting: Move Alert Groups tab to end of tabs (#42241)
* move alertgroups tab to end of tabs

* more reorder
2021-11-24 18:28:19 +01:00
Sarah Zinger fc8d93e231 Azure Monitor: Fastpass Fixes -- Add trap focus for modals in grafana/ui and other small a11y fixes for Azure Monitor. (#41449) 2021-11-24 12:16:14 -05:00
Gábor Farkas 24d4c8a9d1 Loki: alerting: handle variables like __interval and __range (#42126) 2021-11-24 16:56:53 +01:00
renovate[bot] ccd162f806 Update dependency mocha to v9 (#41416)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-24 15:04:58 +00:00
Piotr Jamróz 4e35d35e67 Logs: Cancel log volume query when the main query is canceled (#41856)
* Cancel log volume query when the main query is canceled

* Test keeping complete log volume data when main query is canceled
2021-11-24 15:34:19 +01:00
Alexander Zobnin 177a0d69d1 Disable only built-in role selector for external users (#42197) 2021-11-24 17:25:28 +03:00
Torkel Ödegaard 0f6ae272e9 E2E: Fix running any suite locally (#42210)
* e2e: Fix running any suite locally

* Fixed issue with testFiles filter when specifying suite name

* unrelated

* fixed import paths to shared

* Moving dashboards to root
2021-11-24 15:16:51 +01:00
Giordano Ricci 2346d5a3f3 Elasticsearch: omit query_string filter when no lucene query is provided (#42060)
* Elasticsearch: omit query_string filter when no query is provided

* Fix tests

* optional lucene query

* improve test and types
2021-11-24 14:09:10 +00:00
Piotr Jamróz 8725d3d7e0 Graphite: Limit number of suggestions displayed in Graphite drop downs (#42056)
* Limit number of suggestions displayed in Graphite dropdowns

* Use limit API to reduce number of loaded tags for autocomplete

* Make tests more explicit
2021-11-24 15:08:03 +01:00
Jack Westbrook b8c5ac63b1 Grafana UI: Prevent mandatory css prop in bundled types (#42216) 2021-11-24 14:35:06 +01:00
Dominik Prokop 2dc30dff63 grafana/ui: Expose ButtonProps type (#42221) 2021-11-24 14:25:59 +01:00
Hugo Häggmark 67a1052334 Dashboard: Fix cache timeout persistence (#42204)
* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* WIP: Mob session work 🚧🔱

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: joshhunt <josh@trtr.co>
Co-authored-by: kay delaney <kay@grafana.com>
2021-11-24 14:24:33 +01:00
Piotr Jamróz b3e417f768 Graphite: Run onChange/onRunQuery after reducer action finishes (#42136) 2021-11-24 14:08:00 +01:00
Timur Olzhabayev 09c849eb08 Update SECURITY.md (#42149) 2021-11-24 14:06:18 +01:00
Tania B 4014891971 Encryption: Cleanup and add logging (#42084)
* Encryption: Add more logs

* Add logging and checks

* Removed unused methods from secrets service

* Refactor and update tests

* Address review feedback
2021-11-24 15:01:44 +02:00
Gábor Farkas 06e474dfd5 Explore: query history: fix error when removing last item (#42179)
* explore: rich-history: fix data inconsistency

* also handle starred-queries tab
2021-11-24 13:52:44 +01:00
Derik Evangelista 3110a9c238 Table: add space between values on JSONViewCell (#42156)
fixes #42024
2021-11-24 11:45:05 +00:00
Ivana Huckova 1b4f6b19cb Prometheus: Fix running of health check query based on access mode (#42189)
* Prometheus: Use this.query for health check

* Update alertMessage in e2e tests
2021-11-24 12:43:39 +01:00
Piotr Jamróz 10f844e3ad Loki: Rename the hint header (#42205)
X-Query-Tag -> X-Query-Tags (https://github.com/grafana/grafana/pull/42108#discussion_r755776672)
2021-11-24 12:41:52 +01:00
Jeremy Price a145ec37bb Handle request service account when not enabled (#42122)
* Handle request service account when not enabled
2021-11-24 11:56:55 +01:00
Gábor Farkas fe84454bb0 loki: alerting: simplified config (#42147)
* loki: alerting: simplified config

* adjusted config handling
2021-11-24 11:52:33 +01:00
n2N8Z eaf46600c4 CloudWatch: Add missing AWS/Events metrics. (#42164)
* Add missing InvocationsFailedToBeSentToDlq metric.

* Add missing InvocationsSentToDlq metric.
2021-11-24 11:35:18 +01:00
Hugo Häggmark df22828d7d TextPanel: Fix suggestions for existing panels (#42195)
Closes #42118

Co-authored-by: kay delaney <kay@grafana.com>
Co-authored-by: Josh Hunt <josh@trtr.co>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
2021-11-24 11:20:36 +01:00
Dimitris Sotirakis db122e9b2c CI: Run e2e tests in parallel using multiple suites (#41748)
* Split suite1 to multiple e2e test suites

* Update drone yaml

* Add missing arg

* Extract cypress install step

* Change image on e2e tests step

* Sync with main

* Add cypress cache volume

* Try with grafana/ci-e2e:12.19.0-1 image

* Update grabpl version to 2.7.2

* Revert a11y failure back to 'always'
2021-11-24 11:20:11 +01:00
Leonard Gram d624230b5d Packaging: removes an unused dependency (#42071)
* Packaging: removes an unused dependency

libfontconfig1 was used by phantomjs but we aren't using phantomjs
anymore

* Packaging: removes further libfontconfig1 references
2021-11-24 10:45:29 +01:00
Gabriel MABILLE a93e649af5 AccessControl: Document orgs roles and orgs endpoints (#42171)
* AccessControl: Document `orgs` roles and `orgs` endpoints

* Use maintainer instead of manager
2021-11-24 10:08:55 +01:00
Gabriel MABILLE eea0e6a6c0 AccessControl: Renamed orgs roles, removed fixed:orgs:reader introduced in beta1 (#42049)
* AccessControl: Rework Orgs roles

* Increase version for name migration

* Update pkg/api/roles.go

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>

* Use maintainer instead of manager

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2021-11-24 10:08:42 +01:00
Alexander Emelin 7b95c86821 up plugin sdk to v0.118.0 (#42167) 2021-11-24 12:03:19 +03:00
Eric Leijonmarck 9c11040c3e Serviceaccounts: Filtering service accounts from user queries (#41410)
* Add extra fields to OSS types to support enterprise

* WIP service accounts

* Update public/app/features/api-keys/ApiKeysForm.tsx

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>

* Create a service account at the same time as the API key

* Use service account credentials when accessing API with APIkey

* Throw better error

* Use Boolean for "create service account button"

* Add GetRole to service, merge RoleDTO and Role structs

This patch merges the identical OSS and Enterprise data structures, which improves the code for two reasons:

1.  Makes switching between OSS and Enterprise easier
2.  Reduces the chance of incompatibilities developing between the same functions in OSS and Enterprise

* Start work cloning permissions onto service account

* If API key is not linked to a service account, continue login as usual

* Fallback to old auth if no service account linked to key

* Commented

* Add CloneUserToServiceAccount

* Update mock.go

* Put graphical bits behind a feature toggle

* Start adding LinkAPIKeyToServiceAccount

* Update pkg/models/user.go

Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>

* Update pkg/api/apikey.go

Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>

* Update pkg/api/apikey.go

Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>

* Finish LinkAPIKeyToServiceAccount

* Update comment

* Handle api key link error

* Update pkg/services/sqlstore/apikey.go

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>

* Feature toggle

* Update pkg/services/accesscontrol/accesscontrol.go

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>

* Not needed (yet)

* Better error messages for OSS accesscontrol

* Set an invalid user id as default

* ServiceAccountId should be string

* Re-arrange field names

* ServiceAccountId is integer

* Update ossaccesscontrol.go

* Linter

* Remove fronend edits

* Remove console log

* Update ApiKeysForm.tsx

* feat: add serviceaccount deletion

* feat: make sure we do not accidently delete serviceaccount

* feat: ServiceAccount Type

* refactor: userDeletions function

* refactor: serviceaccount deletions\

* refactor: error name and removed attribute for userDeletecommand

* refactor:: remove serviceaccount type for now

* WIP

* add mocked function

* Remove unnecessary db query, move to right place

* Update pkg/services/accesscontrol/mock/mock.go

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>

* Update pkg/services/accesscontrol/mock/mock.go

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>

* Update pkg/services/accesscontrol/mock/mock.go

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>

* Better error messages

* Better and correcter error messages

* add mocked function

* refactor: move function call, add error msg

* add IsServiceAccount and fix table

* add service accounts package

* WIP

* WIP

* working serviceaccountsapi registration

* WIP tests

* test

* test working

* test running for service

* moved the error out of the models package

* fixed own review

* linting errors

* Update pkg/services/serviceaccounts/database/database.go

Co-authored-by: Jeremy Price <Jeremy.price@grafana.com>

* tests running for api

* WIP

* WIP

* removed unused secrets background svc

* removed background svc for serviceaccount infavor or wire.go

* serviceaccounts manager tests

* wip

* Filtering service accounts from the user queries in frontend

* clean up

* Update pkg/services/sqlstore/org_test.go

* methods on same type should have same receiver

* _ unused variable and comment

* add additional join for results query

* remove unused code

* remove error fmt

* refactor: change to only have false

* no new variable to the left hand side

* refactor: create serviceaccount cmd

* dialect fix

Co-authored-by: Jeremy Price <jeremy.price@grafana.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2021-11-23 23:06:40 +00:00
Tania B 3af36b7e23 Encryption: Add settings to ini files (#42057)
* Encryption: Add settings to ini files

* Rename a setting
2021-11-23 20:29:35 +02:00
gotjosh a5b29aed29 Alerting: Document Alertmanager/Prometheus versions we support (#42160)
* Alerting: Document Prometheus/Alertmanagers versions we support

* Illustrate with an example
2021-11-23 18:41:48 +01:00
Agnès Toulet 934e4ad3af Docs: update auditing documentation with new logs (#41722)
* Add detailed info on audit log contents

* Apply suggestions from code review

Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>

* Docs: update auditing documentation with new logs

* add back remove datasource permission

* improve formatting

* fix incorrect action

* clean formatting

* formatting

Co-authored-by: Jesse Weaver <jesse.weaver@grafana.com>
Co-authored-by: Jesse Weaver <pianohacker@gmail.com>
2021-11-23 18:13:00 +01:00
Ashley Harrison 993025c478 Update .pa11yci-pr.conf.js (#42148) 2021-11-23 16:43:37 +00:00
nikki-kiga 92e1883845 Geomap: Add rotation option for markers layer (#41992)
* add rotation option for markers layer

* add ScalerDimensionEditor
2021-11-23 08:23:43 -08:00
Will Browne 0921037f32 Plugins: Move logs from globals to fields (#42141)
* move logs from globals to fields

* fix test
2021-11-23 17:09:52 +01:00
renovate[bot] 0ab4afa2b7 Update sentry-javascript monorepo to v6 (#41991)
* Update sentry-javascript monorepo to v6

* Pass fetch implementation to FetchTransport and stub in unit tests

* kick drone

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-23 15:59:32 +00:00
Will Browne 96b1776856 Chore: Fix pass context for SetAlertStateCommand (#42135)
* fix pass ctx for SetAlertStateCommand

* fix integration test
2021-11-23 16:40:09 +01:00
Jean-Philippe Quéméner cec2d965ec Alerting: validate mute timings in the alertmanager configuration (#42125)
* Alerting: check for uniqueness of mutetime names

* add some testing

* add name validation

* add root route validation

* add tests for validation

* add check for root route mute_time_intervals

* add duplicate test

* remove useless yaml test

* refactor table test
2021-11-23 16:25:20 +01:00
Gilles De Mey 3e16abc939 Timeseries Panel: render threshold at either top or bottom of graph when it is out… (#41649) 2021-11-23 16:18:07 +01:00
Ashley Harrison 20e1457a78 Select: use findBy and make these tests async to avoid act() errors (#42134) 2021-11-23 14:53:10 +00:00
Dominik Prokop d2d38c978f grafana/ui: Export types and utils required by grafana/experimental (#42133)
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-11-23 15:41:51 +01:00
Jack Westbrook 694600ed04 Catalog: Provide default tab fallback in Plugin Details page (#41979)
* feat(catalog): introduce defaultTab to usePluginDetailsTabs hook

* feat(catalog): use defaultTab as fallback tab for PluginDetails

* chore(catalog): remove hardcoded page query param in list items

* refactor(catalog): prefer let over react ref when setting default tab in PluginDetails

* refactor(catalog): pass pageId to plugin details body rather than duplicate logic

* test(catalog): remove query param from List item test hrefs

* test(catalog): introduce a test for default app config page for installed app plugins
2021-11-23 15:38:08 +01:00
Ivana Huckova aefb2659ec Tracing: Show start time of trace with milliseconds precision (#42132)
* Tracing header: Add setting to show start time with ms

* Add test

* Update test
2021-11-23 15:28:18 +01:00
Gilles De Mey ca7a62682e fix: use better type assertion for initialAsyncRequestState (#42087) 2021-11-23 15:14:59 +01:00
Stephanie Closson 8b95746f63 Jaeger: Make tags templateable (#42005)
* make tags templateable

* cleanup files I didn't want to modify
2021-11-23 10:02:07 -04:00
kay delaney e3ef82203e CodeEditor: Prevent suggestions from being clipped (#42120)
Closes #40792

Co-authored-by: Josh Hunt <josh@trtr.co>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
2021-11-23 12:18:17 +00:00
Victor Marin 410044fa05 annotations editor menu should not appear if annotations are disabled (#42068) 2021-11-23 14:16:11 +02:00
renovate[bot] 035e676cad Update dependency react-select to v5 (#41604)
* Update dependency react-select to v5

* Remove @types/react-select and update types accordingly

* Fix all unit tests

* Add @ts-expect-error to individual errors, remove prefix as it doesn't seem to exist?

* Another minor typescript fix

* Apply fixes from torkel's PR

* Fix last typescript error

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-23 12:11:26 +00:00
Marcus Efraimsson 6b79393ccc Chore: Split nightly docker image scan into separate pipelines (#42097)
Split the nightly Docker scan job into separate pipelines, one for each 
image, to easier understand which images fails/includes high/critical 
vulnerabilities.
2021-11-23 11:43:00 +01:00
Jack Westbrook 8b3725b9f2 Chore: Bump versions to 8.4.0-pre (#42116) 2021-11-23 11:23:02 +01:00
Zoltán Bedi 271a941a29 Update latest.json (#42115) 2021-11-23 11:10:57 +01:00
Piotr Jamróz 4db4dc2ce9 Loki: Pass log volume hint as a request header (#42108) 2021-11-23 11:08:37 +01:00
Grot (@grafanabot) f186575693 ReleaseNotes: Updated changelog and release notes for 8.3.0-beta1 (#42044) 2021-11-23 11:05:27 +01:00
Dimitris Sotirakis e3bb53b64d CI: Remove Linux grabpl step dependency from Windows builds (#42069)
* Remove Linux grabpl download step from Windows oss builds

* Remove Linux grabpl download step from Windows enterprise builds
2021-11-23 09:57:16 +01:00
Ivana Huckova d7e4f303c4 Logs: Fix requesting of older logs when flipped order (#41966)
* Logs: Fix requesting of older logs wehn flipped order

* Fix index change when requesting logs
2021-11-23 09:56:06 +01:00
achatterjee-grafana c4b21f7b51 Removed packahes_api relrefs. (#42017) 2021-11-22 16:58:51 -05:00
renovate[bot] 68ce617f07 Ignore react-icons bump for now (#41537)
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-22 17:32:31 +00:00
idafurjes 5ac1dc1008 Bump grabpl version to 2.7.1 (#42089) 2021-11-22 17:37:51 +01:00
Alexander Zobnin da2c99a2e1 Access control: use delegatable flag to check if role can be granted (#42070)
* Access control: use delegatable flag to check if role can be granted or not

* Fix naming
2021-11-22 17:44:03 +03:00
Giordano Ricci e7e5c54148 Elasticsearch: Display custom values in version select (#42051)
* Elasticsearch: Display custom values in version select

* Update public/app/plugins/datasource/elasticsearch/configuration/ElasticDetails.tsx

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>

Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2021-11-22 15:14:11 +01:00
Petros Kolyvas 3340d7ad44 Docs: Whats new 8.3 - Preliminary (#41930)
* Initial placeholder docs for candlestick panel

* Initial What's new for 8.3

* Delete candlestick.md

Removing this file as it's part of another branch/pr

* Oops forgot to hit save in VSCODE. Rookie mistake
2021-11-22 14:46:57 +01:00
Alexander Zobnin 6f8cfc6def Role picker: extend width to prevent menu being out of page (#42047) 2021-11-22 16:30:24 +03:00
Gábor Farkas 037fd9cc8c Loki: alerting: adjust step-calculation to be the same as in frontend (#42033)
* loki: alerting: adjust step-calculation to be the same as in frontend

* loki: simplified test

* lint fix
2021-11-22 14:28:51 +01:00
renovate[bot] d11ae6dc3f Update dependency @types/react-dom to v17 (#42045)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-22 13:24:40 +00:00
renovate[bot] 2f0f45e7aa Update typescript-eslint monorepo to v5 (#42046)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-22 13:57:19 +01:00
Ivana Huckova d4ddd2373b Tracing: Fix incorrect indentations due to reoccurring spanIDs (#41919)
* Create unique keys for trace rows

* Add tests

* Fix tests

* Update public/app/features/explore/TraceView/TraceView.test.tsx

* Trigger Build
2021-11-22 13:18:50 +01:00
kay delaney 47a7477cff A11y/DashList: Make star button tab-navigable (#41479) 2021-11-22 13:03:50 +01:00
George Robinson 9122e7f647 Alerting: Check for nil model.Settings and models.SecureSettings (#37738) 2021-11-22 11:56:18 +00:00
Dimitris Sotirakis 4b2c90b834 Add deployment_tools_config.json to git and eslint ignore (#42053)
(cherry picked from commit 15a603dae0)
2021-11-22 12:36:21 +01:00
Ivana Huckova 9efd85a241 Tracing: Make query editors available in dashboard for Tempo and Zipkin (#41974)
* Tempo: Set query editor

* Zipkin: Set query editor

* Set metrics to true so the data source as shown in dashboard data source list
2021-11-22 12:07:38 +01:00
Ashley Harrison b6b75e919b Select: Select menus now properly scroll during keyboard navigation (#41917)
* Select: Select menus now properly scroll when navigating with the keyboard

* Remove this unnecessary children declaration in the interface

* Guard this with an if statement to avoid the nullish coalescing

* Don't need the optional chaining if we're guarding with an if
2021-11-22 10:57:44 +00:00
renovate[bot] f97b7858b4 Update dependency @types/react to v17 (#42035)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-22 11:27:33 +01:00
renovate[bot] abcf4e55b7 Update dependency @testing-library/react-hooks to v7 (#42000)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-22 10:25:42 +00:00
renovate[bot] b143c3883f Update dependency @testing-library/react to v12 (#41997)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-22 09:45:37 +00:00
Torkel Ödegaard 942920cb36 PanelEdit: Always show delete icon button for overrides, even when collapsed (#42029) 2021-11-22 09:55:07 +01:00
Peter Holmberg 97978a7c02 Alerting: Add value to notifier template (#41951)
* add value to email template

* add value to default template

* update test string

* test: fix ngalert test suite

* test: run CI

Co-authored-by: gillesdemey <gilles.de.mey@gmail.com>
2021-11-22 08:45:44 +01:00
Alexander Zobnin 6c3c82d132 Access control: Fix permission required to invite users (prevent access error) (#41943)
* Fix permission required to invite users (prevent access error)

* Use hasAccess method with fallback

* Fix tests
2021-11-22 09:40:52 +03:00
Hugo Häggmark 44d7d6546f Variables: Make renamed or missing variable section expandable (#41964)
* Variables: Make renamed or missing variable section expandable

* Chore: feedback after PR comments
2021-11-22 07:38:49 +01:00
Jean-Philippe Quéméner f3b023ffa6 Fix: add the babel config to the dockerfiles (#42021) 2021-11-20 15:40:13 +01:00
Ryan McKinley 403222e14e Candlestick: exclude unmapped fields by default (#42011)
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2021-11-19 18:39:21 -06:00
sam boyer 8a06e89d2f Update cuetsy to latest (#42015)
This update adds fixes and workarounds related to enum generation.
2021-11-19 23:39:21 +01:00
Todd Treece cc471f2d58 Recorded Queries: Split extension reducers init and extension init (#41850) 2021-11-19 16:24:02 -05:00
Dimitris Sotirakis bec3cc4634 Make integration tests depend on initialize for enterprise-release-* branches (#42004) 2021-11-19 21:50:34 +01:00
Leon Sorokin 07a440fd3a TimeSeries: fix fillBelowTo wrongly affecting fills of unrelated series (#41998) 2021-11-19 14:42:04 -06:00
achatterjee-grafana 7f3562886e Corrected the path. (#42006) 2021-11-19 14:42:53 -05:00
achatterjee-grafana e0db19e741 updated image name (fixed typo), removed redundant image and resized images. (#41999) 2021-11-19 13:18:32 -05:00
Dave Henderson fc7277920c Dockerfile: Bump Go and Alpine versions (#41922)
* Dockerifle: Bump Go and Alpine versions

Signed-off-by: Dave Henderson <dave.henderson@grafana.com>

* Updating .drone.yml with 'make drone'

Signed-off-by: Dave Henderson <dave.henderson@grafana.com>
2021-11-19 18:59:24 +01:00
Ryan McKinley f661e20dd7 Testdata: add random labeled stream (#41932) 2021-11-19 09:54:05 -08:00
Ryan McKinley 82cf49143d ExtractFields: properly detect value types from extracted fields (#41995) 2021-11-19 09:50:30 -08:00
renovate[bot] cf995ea420 Remove tether dependency since it's not used anymore (#41632)
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-19 17:47:06 +00:00
renovate[bot] 4f884a31de Update dependency cypress to v9 (#41588)
* Update dependency cypress to v9

* Update e2e test to work with Cypress 9

* kick drone

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-19 17:19:53 +00:00
Gábor Farkas 2fbc6b1d2f loki: simplify interval calculation (#41857) 2021-11-19 17:20:32 +01:00
renovate[bot] ce4490cbba can't bump execa until esm modules (#41967)
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-19 15:56:59 +00:00
Jean-Philippe Quéméner b9cdad3814 Alerting: support mute timings configuration through the api for the embedded alertmanager (#41533)
* Alerting: accept mute_timing_intervals through the api for the embedded alertmanager

* add workaround for mutetimeinterval

* add mute timings to routes

* revert changes

* Update pkg/services/ngalert/api/api_alertmanager.go

* Update pkg/services/ngalert/api/api_alertmanager.go

* Update pkg/services/ngalert/api/api_alertmanager.go

* update prometheus/alertmanager dependency

* add some var docs
2021-11-19 16:50:55 +01:00
Ikko Ashimine e7ec219291 Chore: fix typo in annotations.ts (#41978)
propery -> property
2021-11-19 15:12:15 +00:00
Gábor Farkas 91f9284e9d docs: improved deprecation-info for elasticsearch and influxdb (#41981) 2021-11-19 15:58:21 +01:00
Ursula Kallio ed0f3100b3 Add concept about envelope encryption (#41860)
* Add concept about envelope-encryption.

* remove comma

* separate warning note into steps

* remove steps from warning note

* Fix lint

Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2021-11-19 07:51:16 -07:00
Gábor Farkas f5641c0293 Docs: add easier to find deprecation notices to certain data sources and to the changelog (#41938)
* docs: add easier to find deprecation-info

* better indentation in the docs

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* better indentation in the docs

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* prettier fixes

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2021-11-19 15:23:07 +01:00
idafurjes 87f148aa27 Chore: Add context to playlist (#41337)
* Add context to playlist

* Add AddEventListenerCtx and more context

* Update pkg/services/sqlstore/playlist.go

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Update pkg/services/sqlstore/playlist.go

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Update pkg/services/sqlstore/playlist.go

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Fix lint

* Rename listener help function

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-11-19 14:32:14 +01:00
Dominik Prokop 67f43cd7ab ThresholdControls: Use correct scale key when calculating handle position (#41942) 2021-11-19 14:03:27 +01:00
idafurjes 972764cf8f Add context for Publish and AddEventListener (#41665)
* Add context for Publish and AddEventListener

* Add test and listenersWithCtx

* Refactor listener logic

* Refactor publish logic for all combination of listeners and publish with and without ctx
2021-11-19 13:56:42 +01:00
Levente Balogh 35c2c95fdc Plugins: remove deprecated code (components) (#41686)
* refactor(plugins): use routes specific to the new plugins/admin

* refactor(plugins): remove unused pages (PluginList, PluginItem)

* refactor(plugins): remove PluginPage

* refactor(plugins): remove UpdatePluginModal

* refactor(plugins): move AppConfigWrapper under plugins/admin

* refactor(plugins): move PluginDashboards under plugins/admin

* refactor(plugins): rename the "specs" folder to "tests"

* refactor(plugins): move test files to /tests folder

* refactor(plugins): move AppRootPage into a /components folder

* refactor(plugins): move PluginsErrorsInfo into a /plugins folder

* refactor(plugins): move PluginSettingsCache into a /components folder

* refactor(plugins): move PluginStateInfo into a /plugins folder

* refactor(plugins): move AppRootPage.test.tsx next to the tested component

* refactor(plugins): remove old snapshot tests

* fix(plugins): fix tests

* refactor(plugins/admin): move & rename PluginSettingsCache

* fix(plugins): fix a few rebase issues

* Plugins: remove deprecated code (state handling) (#41739)

* refactor(plugins): use the plugins/admin reducer only

* refactor(plugins): remove tests for the deprecated plugins reducer

* refactor(plugins): remove tests for the deprecated plugins selectors

* refactor(plugins/state): add a short comment note to selectors

* feat(plugins/state): add a selector for selecting errors

* feat(plugins/state): add a hook for getting plugin errors

* refactor(plugins): udpate the PluginsErrorsInfo component to use the new state selectors

* refactor(plugins/state): remove the old (deprecated) selectors

* refactor(plugins/state): use the new actions under /admin

* refactor(plugins/state): remove old (deprecated) reducers and actions

* refactor(plugins): update component definition

* fix(plugins): remove unnecessary {children} prop for PluginsErrorsInfo

* Plugins: show / hide install controls based on the `pluginAdminEnabled` flag (#41749)

* docs(plugins): update documentation for the `plugin_admin_enabled` flag

* refactor(InstallControls): move the main component to a named module

* feat(plugins): use the `pluginAdminEnable` flag to hide / show install controls in the UI

* test(plugins): add tests for enabling/disabling install controls
2021-11-19 13:42:26 +01:00
renovate[bot] 98f87c4c49 Ignore history/react-router-dom for now (#40932)
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-11-19 12:29:57 +00:00
Levente Balogh d6e253b771 chore(CODEOWNERS): remove references on "@grafana/plugins-platform" (#41949) 2021-11-19 13:09:14 +01:00
renovate[bot] c659d6fa4c Update dependency immutable to v4 (#41238)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-19 12:02:59 +00:00
Eric Leijonmarck 253da4a936 refactor: fix displayname and description for serviceaccount role (#41946)
* refactor: fix displayname and description for serviceaccount role

* add: ActionWrite, ActionCreate

* refactor: update description
2021-11-19 12:39:50 +01:00
malcolmholmes 8ccd7599bd Releasing: start splitting out publish phase (#41959) 2021-11-19 11:39:10 +00:00
Nathan Rodman 81155e2d55 Alerting: increase timeout for silences tests (#41918) 2021-11-19 13:07:28 +02:00
Emil Tullstedt 12e0a94316 JWT: Split race-y test into two stable tests (#41950) 2021-11-19 12:05:04 +01:00
Ieva 03b7a55242 show admin nav link it the user only has permissions to view licensing and not other pages under admin node (#41948) 2021-11-19 11:02:13 +00:00
Dimitris Sotirakis 42c51747ed Refactor drone yaml (#41937) 2021-11-19 11:35:57 +01:00
Dominik Prokop 92639d1475 Update latest.json (#41873) 2021-11-19 10:37:00 +01:00
Alexander Zobnin d66158a042 Fix loop when cannot fetch roles (#41901) 2021-11-19 12:23:03 +03:00
Andres Martinez Gotor c5241731de AzureMonitor: Fix metric namespace clear (#41878) 2021-11-19 10:16:56 +01:00
Ieva 11f133b406 Access Control: use role groups in role picker (#41912)
* use role groups in role picker UI

* Update public/app/core/components/RolePicker/RolePickerMenu.tsx

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
2021-11-19 08:52:16 +00:00
Gabriel MABILLE da5327ea14 AccessControl: RolePicker fetch roles in org (#41927) 2021-11-19 09:50:01 +01:00
Will Browne 4fa7fd2c75 add unsupported renderer message to catalog (#41898) 2021-11-19 08:47:28 +00:00
Dimitris Sotirakis 0462577f3d Install netcat to build-container and update the version (#41825) 2021-11-19 09:17:29 +01:00
Ryan McKinley a6e60c62f4 Transformers: extract fields from JSON and text (alpha) (#41791)
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2021-11-18 21:52:49 -08:00
Leon Sorokin 17c2f52dcf Candlestick: fix volume histogram height by using mapped field name (#41931) 2021-11-18 20:31:18 -06:00
Nathan Marrs 541d1543db Geomap: Improve geojson style editor (#41926) 2021-11-18 17:39:13 -08:00
Agnès Toulet e904f423e4 Docs: Add configuration option for the image renderer (#41798)
* Docs: add configuration option for the image renderer

* Apply review feedback
2021-11-18 18:09:08 +01:00
Josh Hunt 3b497f3e8d Chore: Move babel config to a root babel.config.json (#41615)
* Chore: Move babel config to a root babel.config.json

* Re-add babel cache settings to webpack

* Re-add production browserlist in babel config

* re-add babel hot refresh config

* fix storybook
2021-11-18 16:38:58 +00:00
Dimitris Sotirakis 7dcc5ca199 Make initialize depend on clone, only on enterprise pipelines (#41909) 2021-11-18 18:10:25 +02:00
Dimitris Sotirakis e8a2a82d5c Run integration tests after initialize (#41906) 2021-11-18 17:59:22 +02:00
Marcus Efraimsson ea4e711fe3 Datasource: Fix stable sort order of query responses (#41868)
Fixes #41773
Fixes #41303
Ref grafana/grafana-plugin-sdk-go#366
Ref #39614
2021-11-18 16:57:20 +01:00
Dimitris Sotirakis 53dc388dcf Disable lint-drone from release pipelines (#41899) 2021-11-18 17:32:45 +02:00
sam boyer fc3ed34b22 Add basic resource trimming command (#41780)
* Add basic trim command

* Indent properly

* Actually apply defaults if the user asks for it
2021-11-18 10:02:11 -05:00
Dimitris Sotirakis c82a15eafb Update grabpl version to 2.6.1 (#41892) 2021-11-18 15:56:49 +01:00
Andres Martinez Gotor f8192bf428 Azure Monitor: Clean up fields when editing Metrics (#41762) 2021-11-18 15:13:56 +01:00
Grot (@grafanabot) daa3cb831d ReleaseNotes: Updated changelog and release notes for 8.2.5 (#41886) 2021-11-18 14:58:09 +01:00
Gabriel MABILLE 0ee0a0b7a0 AccessControl: FGAC permissions for orgs endpoint on frontend (#41050)
* AccessControl: FGAC permissions for orgs endpoint on frontend

Protect org update endpoints

add or refactor missing right messages

cover org page

* removing scopes from orgs

* Perform permission control with global org

* Perform the error handling in case of 403

* Simplify frontend code by requiring read access for sure

* Remove roles I added to decrease the number of changes

* Remove the check for server admin to reduce the number of changes

* change error message

* Cleaning todos

* Remove unecessary changes

* Fix tests

* Update test snapshot

* Update pkg/api/roles.go

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Update public/app/features/admin/AdminEditOrgPage.tsx

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>

* Format AdminEditOrgPage for linting

* Update public/app/features/admin/AdminEditOrgPage.tsx

Co-authored-by: Vardan Torosyan <vardants@gmail.com>

* Update public/app/features/admin/AdminEditOrgPage.tsx

Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>

* Update public/app/features/admin/AdminListOrgsPage.tsx

Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>

* Commit suggestions

* Commit suggestion canRead canWrite

* fix typo

Co-authored-by: Ursula Kallio <73951760+osg-grafana@users.noreply.github.com>
Co-authored-by: Vardan Torosyan <vardants@gmail.com>
Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>
2021-11-18 14:10:38 +01:00
2860 changed files with 107222 additions and 47199 deletions
+2
View File
@@ -13,8 +13,10 @@ watch_dirs = [
"$WORKDIR/conf",
]
watch_exts = [".go", ".ini", ".toml", ".template.html"]
ignore_files = ["wire_gen.go"]
build_delay = 1500
cmds = [
["make", "gen-go"],
["go", "run", "build.go", "-dev", "build-server"],
["./bin/grafana-server", "-packaging=dev", "cfg:app_mode=development"]
]
-11
View File
@@ -1,11 +0,0 @@
version: 2.1
jobs:
build:
docker:
- image: alpine:3.7
steps:
- run:
name: The First Step
command: |
echo 'Fake step!'
+5 -2
View File
@@ -6,7 +6,7 @@
load('scripts/drone/pipelines/pr.star', 'pr_pipelines')
load('scripts/drone/pipelines/main.star', 'main_pipelines')
load('scripts/drone/pipelines/release.star', 'release_pipelines', 'test_release_pipelines')
load('scripts/drone/pipelines/release.star', 'release_pipelines', 'publish_image_pipelines', 'publish_artifacts_pipelines', 'publish_npm_pipelines', 'publish_packages_pipeline')
load('scripts/drone/version.star', 'version_branch_pipelines')
load('scripts/drone/pipelines/cron.star', 'cronjobs')
load('scripts/drone/vault.star', 'secrets')
@@ -14,4 +14,7 @@ load('scripts/drone/vault.star', 'secrets')
def main(ctx):
edition = 'oss'
return pr_pipelines(edition=edition) + main_pipelines(edition=edition) + release_pipelines() + \
test_release_pipelines() + version_branch_pipelines() + cronjobs(edition=edition) + secrets()
publish_image_pipelines('public') + publish_image_pipelines('security') + \
publish_artifacts_pipelines('security') + publish_artifacts_pipelines('public') + \
publish_npm_pipelines('public') + publish_packages_pipeline() + \
version_branch_pipelines() + cronjobs(edition=edition) + secrets()
+2571 -1962
View File
File diff suppressed because it is too large Load Diff
+6
View File
@@ -6,4 +6,10 @@ devenv
data
dist
e2e/tmp
scripts/grafana-server/tmp
public/lib/monaco
deployment_tools_config.json
# Auto-generated localisation files
public/locales/_build/
public/locales/**/*.js
+39 -26
View File
@@ -14,7 +14,7 @@
# Documentation owner: Jita Chatterjee
/docs/ @grafana/docs-squad @pkolyvas
/contribute/ @marcusolsson @grafana/docs-squad @pkolyvas
/docs/sources/developers/plugins/ @marcusolsson @grafana/docs-squad @grafana/plugins-platform
/docs/sources/developers/plugins/ @marcusolsson @grafana/docs-squad @grafana/plugins-platform-frontend @grafana/plugins-platform-backend
/docs/sources/developers/plugins/backend @marcusolsson @grafana/docs-squad @grafana/plugins-platform-backend
/docs/sources/enterprise/ @osg-grafana @grafana/docs-squad
@@ -30,18 +30,24 @@ go.sum @grafana/backend-platform
/scripts/drone/ @grafana/grafana-release-eng
# Cloud Datasources backend code
/pkg/tsdb/cloudwatch @grafana/cloud-datasources @grafana/observability-squad
/pkg/tsdb/cloudwatch @grafana/cloud-datasources
/pkg/tsdb/azuremonitor @grafana/cloud-datasources
/pkg/tsdb/cloudmonitoring @grafana/cloud-datasources
# Observability backend code
/pkg/tsdb/influxdb @grafana/observability-squad
/pkg/tsdb/elasticsearch @grafana/observability-squad
/pkg/tsdb/graphite @grafana/observability-squad
/pkg/tsdb/jaeger @grafana/observability-squad
/pkg/tsdb/loki @grafana/observability-squad
/pkg/tsdb/zipkin @grafana/observability-squad
/pkg/tsdb/tempo @grafana/observability-squad
/pkg/tsdb/prometheus @grafana/observability-metrics
/pkg/tsdb/influxdb @grafana/observability-metrics
/pkg/tsdb/elasticsearch @grafana/observability-logs-and-traces
/pkg/tsdb/graphite @grafana/observability-metrics
/pkg/tsdb/jaeger @grafana/observability-logs-and-traces
/pkg/tsdb/loki @grafana/observability-logs-and-traces
/pkg/tsdb/zipkin @grafana/observability-logs-and-traces
/pkg/tsdb/tempo @grafana/observability-logs-and-traces
# BI backend code
/pkg/tsdb/mysql @grafana/grafana-bi-squad
/pkg/tsdb/postgres @grafana/grafana-bi-squad
/pkg/tsdb/mssql @grafana/grafana-bi-squad
# Database migrations
/pkg/services/sqlstore/migrations @grafana/backend-platform @grafana/hosted-grafana-team
@@ -64,6 +70,9 @@ go.sum @grafana/backend-platform
/pkg/services/datasourceproxy @grafana/plugins-platform-backend
/pkg/services/datasources @grafana/plugins-platform-backend
# Dashboard previews / crawler (behind feature flag)
/pkg/services/thumbs @grafana/grafana-edge-squad
# Backend code docs
/contribute/style-guides/backend.md @grafana/backend-platform
/contribute/architecture/backend @grafana/backend-platform
@@ -81,20 +90,24 @@ go.sum @grafana/backend-platform
/packages/grafana-ui/src/components/TimeSeries @grafana/grafana-bi-squad
/packages/grafana-ui/src/components/uPlot @grafana/grafana-bi-squad
/packages/grafana-ui/src/utils/storybook @grafana/plugins-platform-frontend
/packages/jaeger-ui-components/ @grafana/observability-squad
/packages/jaeger-ui-components/ @grafana/observability-logs-and-traces
/plugins-bundled @grafana/plugins-platform-frontend
/public @grafana/user-essentials
# public folder
/public/app/core/components/TimePicker @grafana/grafana-bi-squad
/public/app/core/components/Layers @grafana/grafana-edge-squad
/public/app/features/canvas/ @grafana/grafana-edge-squad
/public/app/features/dimensions/ @grafana/grafana-edge-squad
/public/app/features/geo/ @grafana/grafana-edge-squad
/public/app/features/live/ @grafana/grafana-edge-squad
/public/app/features/explore/ @grafana/observability-squad
/public/app/features/explore/ @grafana/observability-experience-squad
/public/app/features/plugins @grafana/plugins-platform-frontend
/public/app/core/components/TransformersUI/spatial @grafana/grafana-edge-squad
/public/app/plugins/panel/alertlist @grafana/alerting-squad
/public/app/plugins/panel/barchart @grafana/grafana-bi-squad
/public/app/plugins/panel/heatmap @grafana/grafana-bi-squad
/public/app/plugins/panel/histogram @grafana/grafana-bi-squad
/public/app/plugins/panel/nodeGraph @grafana/observability-squad
/public/app/plugins/panel/logs @grafana/observability-logs-and-traces
/public/app/plugins/panel/nodeGraph @grafana/observability-logs-and-traces
/public/app/plugins/panel/piechart @grafana/grafana-bi-squad
/public/app/plugins/panel/state-timeline @grafana/grafana-bi-squad
/public/app/plugins/panel/status-history @grafana/grafana-bi-squad
@@ -125,22 +138,22 @@ lerna.json @grafana/frontend-ops
*.mdx @marcusolsson @jessover9000 @grafana/plugins-platform-frontend
# Core datasources
/public/app/plugins/datasource/cloudwatch @grafana/cloud-datasources @grafana/observability-squad
/public/app/plugins/datasource/elasticsearch @grafana/observability-squad
/public/app/plugins/datasource/cloudwatch @grafana/cloud-datasources
/public/app/plugins/datasource/elasticsearch @grafana/observability-logs-and-traces
/public/app/plugins/datasource/grafana-azure-monitor-datasource @grafana/cloud-datasources
/public/app/plugins/datasource/graphite @grafana/observability-squad
/public/app/plugins/datasource/influxdb @grafana/observability-squad
/public/app/plugins/datasource/jaeger @grafana/observability-squad
/public/app/plugins/datasource/loki @grafana/observability-squad
/public/app/plugins/datasource/mssql @grafana/backend-platform
/public/app/plugins/datasource/mysql @grafana/backend-platform
/public/app/plugins/datasource/graphite @grafana/observability-metrics
/public/app/plugins/datasource/influxdb @grafana/observability-metrics
/public/app/plugins/datasource/jaeger @grafana/observability-logs-and-traces
/public/app/plugins/datasource/loki @grafana/observability-logs-and-traces
/public/app/plugins/datasource/mssql @grafana/grafana-bi-squad
/public/app/plugins/datasource/mysql @grafana/grafana-bi-squad
/public/app/plugins/datasource/opentsdb @grafana/backend-platform
/public/app/plugins/datasource/postgres @grafana/backend-platform
/public/app/plugins/datasource/prometheus @grafana/observability-squad
/public/app/plugins/datasource/postgres @grafana/grafana-bi-squad
/public/app/plugins/datasource/prometheus @grafana/observability-metrics
/public/app/plugins/datasource/cloud-monitoring @grafana/cloud-datasources
/public/app/plugins/datasource/zipkin @grafana/observability-squad
/public/app/plugins/datasource/tempo @grafana/observability-squad
/public/app/plugins/datasource/zipkin @grafana/observability-logs-and-traces
/public/app/plugins/datasource/tempo @grafana/observability-logs-and-traces
/public/app/plugins/datasource/alertmanager @grafana/alerting-squad
# Cloud middleware
/grafana-mixin/ @grafana/cloud-middleware
/grafana-mixin/ @grafana/hosted-grafana-team
+165 -37
View File
@@ -1,53 +1,181 @@
[
{
"type": "label",
"name": "bot/question",
"addLabel": "type/question",
"removeLabel": "bot/question",
"action": "close",
"comment": "Please ask your question on [community.grafana.com/](https://community.grafana.com/). To avoid having your issue closed in the future, please read our [CONTRIBUTING](https://github.com/grafana/grafana/blob/main/CONTRIBUTING.md) guidelines.\n\nHappy graphing!"
"type":"label",
"name":"bot/question",
"addLabel":"type/question",
"removeLabel":"bot/question",
"action":"close",
"comment":"Please ask your question on [community.grafana.com/](https://community.grafana.com/). To avoid having your issue closed in the future, please read our [CONTRIBUTING](https://github.com/grafana/grafana/blob/main/CONTRIBUTING.md) guidelines.\n\nHappy graphing!"
},
{
"type": "comment",
"name": "duplicate",
"allowUsers": [],
"action": "updateLabels",
"addLabel": "type/duplicate"
"type":"comment",
"name":"duplicate",
"allowUsers":[],
"action":"updateLabels",
"addLabel":"type/duplicate"
},
{
"type": "label",
"name": "bot/duplicate",
"addLabel": "type/duplicate",
"removeLabel": "bot/duplicate",
"action": "close",
"comment": "Thanks for creating this issue! It looks like this has already been reported by another user. Weve closed this in favor of the existing one. Please consider adding any details you think is missing to that issue.\n\nTo avoid having your issue closed in the future, please read our [CONTRIBUTING](https://github.com/grafana/grafana/blob/main/CONTRIBUTING.md) guidelines.\n\nHappy graphing!"
"type":"label",
"name":"bot/duplicate",
"addLabel":"type/duplicate",
"removeLabel":"bot/duplicate",
"action":"close",
"comment":"Thanks for creating this issue! It looks like this has already been reported by another user. Weve closed this in favor of the existing one. Please consider adding any details you think is missing to that issue.\n\nTo avoid having your issue closed in the future, please read our [CONTRIBUTING](https://github.com/grafana/grafana/blob/main/CONTRIBUTING.md) guidelines.\n\nHappy graphing!"
},
{
"type": "comment",
"name": "needsMoreInfo",
"allowUsers": [],
"action": "updateLabels",
"addLabel": "bot/needs more info"
"type":"comment",
"name":"needsMoreInfo",
"allowUsers":[],
"action":"updateLabels",
"addLabel":"bot/needs more info"
},
{
"type": "label",
"name": "bot/needs more info",
"action": "updateLabels",
"addLabel": "needs more info",
"removeLabel": "bot/needs more info",
"comment": "Thanks for creating this issue! We think it's missing some basic information. \r\n\r\nFollow the issue template and add additional information that will help us replicate the problem. \r\nFor data visualization issues: \r\n- Query results from the inspect drawer (data tab & query inspector)\r\n- Panel settings can be extracted in the panel inspect drawer JSON tab\r\n\r\nFor dashboard related issues: \r\n- Dashboard JSON can be found in the dashboard settings JSON model view\r\n\r\nFor authentication, provisioning and alerting issues, Grafana server logs are useful. \r\n\r\nHappy graphing!"
"type":"label",
"name":"bot/needs more info",
"action":"updateLabels",
"addLabel":"needs more info",
"removeLabel":"bot/needs more info",
"comment":"Thanks for creating this issue! We think it's missing some basic information. \r\n\r\nFollow the issue template and add additional information that will help us replicate the problem. \r\nFor data visualization issues: \r\n- Query results from the inspect drawer (data tab & query inspector)\r\n- Panel settings can be extracted in the panel inspect drawer JSON tab\r\n\r\nFor dashboard related issues: \r\n- Dashboard JSON can be found in the dashboard settings JSON model view\r\n\r\nFor authentication, provisioning and alerting issues, Grafana server logs are useful. \r\n\r\nHappy graphing!"
},
{
"type": "label",
"name": "bot/no new info",
"action": "close",
"comment": "We've closed this issue since it needs more information and hasn't had any activity recently. We can re-open it after you you add more information. To avoid having your issue closed in the future, please read our [CONTRIBUTING](https://github.com/grafana/grafana/blob/main/CONTRIBUTING.md) guidelines.\n\nHappy graphing!"
"type":"label",
"name":"bot/no new info",
"action":"close",
"comment":"We've closed this issue since it needs more information and hasn't had any activity recently. We can re-open it after you you add more information. To avoid having your issue closed in the future, please read our [CONTRIBUTING](https://github.com/grafana/grafana/blob/main/CONTRIBUTING.md) guidelines.\n\nHappy graphing!"
},
{
"type": "label",
"name": "bot/close feature request",
"action": "close",
"addLabel": "not implemented",
"comment": "This feature request has been open for a long time with few received upvotes or comments, so we are closing it. We're trying to limit open GitHub issues in order to better track planned work and features. \r\n\r\nThis doesn't mean that we'll never ever implement it or that we will never accept a PR for it. A closed issue can still attract upvotes and act as a ticket to track feature demand\/interest. \r\n\r\nThank You to you for taking the time to create this issue!"
"type":"label",
"name":"bot/close feature request",
"action":"close",
"addLabel":"not implemented",
"comment":"This feature request has been open for a long time with few received upvotes or comments, so we are closing it. We're trying to limit open GitHub issues in order to better track planned work and features. \r\n\r\nThis doesn't mean that we'll never ever implement it or that we will never accept a PR for it. A closed issue can still attract upvotes and act as a ticket to track feature demand\/interest. \r\n\r\nThank You to you for taking the time to create this issue!"
},
{
"type":"label",
"name":"oss-user-essentials",
"action":"addToProject",
"addToProject":{
"url":"https://github.com/orgs/grafana/projects/78"
}
},
{
"type":"label",
"name":"area/plugins-catalog",
"action":"addToProject",
"addToProject":{
"url":"https://github.com/orgs/grafana/projects/76"
}
},
{
"type":"label",
"name":"type/docs",
"action":"addToProject",
"addToProject":{
"url":"https://github.com/orgs/grafana/projects/69"
}
},
{
"type":"label",
"name":"datasource/Azure",
"action":"addToProject",
"addToProject":{
"url":"https://github.com/orgs/grafana/projects/97"
}
},
{
"type":"label",
"name":"datasource/CloudWatch",
"action":"addToProject",
"addToProject":{
"url":"https://github.com/orgs/grafana/projects/97"
}
},
{
"type":"label",
"name":"datasource/GoogleCloudMonitoring",
"action":"addToProject",
"addToProject":{
"url":"https://github.com/orgs/grafana/projects/97"
}
},
{
"type":"label",
"name":"oss-observability",
"action":"addToProject",
"addToProject":{
"url":"https://github.com/orgs/grafana/projects/54"
}
},
{
"type":"label",
"name":"datasource/Prometheus",
"action":"addToProject",
"addToProject":{
"url":"https://github.com/orgs/grafana/projects/54"
}
},
{
"type":"label",
"name":"datasource/InfluxDB",
"action":"addToProject",
"addToProject":{
"url":"https://github.com/orgs/grafana/projects/54"
}
},
{
"type":"label",
"name":"datasource/OpenSearch",
"action":"addToProject",
"addToProject":{
"url":"https://github.com/orgs/grafana/projects/54"
}
},
{
"type":"label",
"name":"datasource/Loki",
"action":"addToProject",
"addToProject":{
"url":"https://github.com/orgs/grafana/projects/54"
}
},
{
"type":"label",
"name":"datasource/Tempo",
"action":"addToProject",
"addToProject":{
"url":"https://github.com/orgs/grafana/projects/54"
}
},
{
"type":"label",
"name":"datasource/Elasticsearch",
"action":"addToProject",
"addToProject":{
"url":"https://github.com/orgs/grafana/projects/54"
}
},
{
"type":"label",
"name":"area/explore",
"action":"addToProject",
"addToProject":{
"url":"https://github.com/orgs/grafana/projects/54"
}
},
{
"type":"label",
"name":"oss-user-essentials",
"action":"removeFromProject",
"removeFromProject":{
"url":"https://github.com/orgs/grafana/projects/78"
}
},
{
"type":"label",
"name":"oss-user-essentials",
"action":"removeFromProject",
"removeFromProject":{
"url":"https://github.com/grafana/grafana/projects/33"
}
}
]
+18
View File
@@ -0,0 +1,18 @@
[
{
"type": "check-milestone",
"title": "Milestone Check",
"targetUrl": "https://github.com/grafana/grafana/blob/main/contribute/merge-pull-request.md#assign-a-milestone",
"success": "Milestone set",
"failure": "Milestone not set"
},
{
"type": "check-backport",
"title": "Backport Check",
"backportEnabled": "Backport enabled",
"backportSkipped": "Backport skipped",
"failure": "Backport decision needed",
"targetUrl": "https://github.com/grafana/grafana/blob/main/contribute/merge-pull-request.md#should-the-pull-request-be-backported",
"skipLabels": [ "backport", "no-backport"]
}
]
+1
View File
@@ -183,6 +183,7 @@
"type": "author",
"name": "pr/external",
"notMemberOf": { "org": "grafana" },
"ignoreList": ["renovate[bot]"],
"action": "updateLabel",
"addLabel": "pr/external"
}
+22 -7
View File
@@ -4,30 +4,45 @@
],
"enabledManagers": ["npm"],
"ignoreDeps": [
"@grafana/slate-react", // should be updated when the `slate` package is updated
"@types/systemjs",
"@types/d3-force", // we should bump this once we move to esm modules
"@types/d3-interpolate", // we should bump this once we move to esm modules
"@types/d3-scale-chromatic", // we should bump this once we move to esm modules
"@types/grafana__slate-react", // should be updated when the `slate` package is updated
"@types/react-icons", // jaeger-ui-components is being refactored to use @grafana/ui icons instead
"d3",
"d3-force", // we should bump this once we move to esm modules
"d3-interpolate", // we should bump this once we move to esm modules
"d3-scale-chromatic", // we should bump this once we move to esm modules
"eslint", // wait until `eslint-plugin-react-hooks>4.2.0` is released
"globby", // we should bump this once we move to esm modules
"execa", // we should bump this once we move to esm modules
"history", // we should bump this together with react-router-dom
"react-icons", // jaeger-ui-components is being refactored to use @grafana/ui icons instead
"react-router-dom", // we should bump this together with history
"slate",
"slate-plain-serializer",
"systemjs",
"copy-webpack-plugin", // try to upgrade with newer yarn release. Not working with 3.1.1
"ts-loader", // we should remove ts-loader and use babel-loader instead
"typescript", // >4.5.x doesn't seem to work on windows with pnp currently. probably similar to https://github.com/yarnpkg/berry/issues/3722
"ora" // we should bump this once we move to esm modules
],
"ignorePaths": ["packages/grafana-toolkit/package.json", "emails/**", "plugins-bundled/**", "**/mocks/**"],
"labels": ["area/frontend", "dependencies"],
"minor": {
"enabled": false
},
"patch": {
"enabled": false
},
"packageRules": [
{
"matchUpdateTypes": ["patch"],
"excludePackagePatterns": ["@storybook"],
"extends": ["schedule:monthly"],
"groupName": "Monthly patch updates"
},
{
"matchPackagePatterns": ["@storybook"],
"extends": ["schedule:monthly"],
"groupName": "Storybook updates"
}
],
"pin": {
"enabled": false
},
+41 -8
View File
@@ -5,24 +5,49 @@ on:
version:
required: true
default: '7.x.x'
workflow_call:
inputs:
version_call:
description: Needs to match, exactly, the name of a version
required: true
type: string
secrets:
token:
required: true
metricsWriteAPIKey:
required: true
jobs:
main:
runs-on: ubuntu-latest
steps:
# This is a basic workflow to help you get started with Actions
- uses: actions-ecosystem/action-regex-match@v2.0.2
if: ${{ github.event.inputs.version != '' }}
id: regex-match
with:
text: ${{ github.event.inputs.version }}
regex: '^(\d+.\d+).\d+(?:-beta.\d+)?$'
- uses: actions-ecosystem/action-regex-match@v2.0.2
if: ${{ inputs.version_call != '' }}
id: regex-match-version-call
with:
text: ${{ inputs.version_call }}
regex: '^(\d+.\d+).\d+(?:-beta\d+)?$'
- name: Validate input version
if: ${{ steps.regex-match.outputs.match == '' }}
if: ${{ steps.regex-match.outputs.match == '' && github.event.inputs.version != '' }}
run: |
echo "The input version format is not correct, please respect:\
major.minor.patch or major.minor.patch-beta.number format. \
example: 7.4.3 or 7.4.3-beta.1"
exit 1
- name: Validate input version call
if: ${{ inputs.version_call != '' && steps.regex-match-version-call.outputs.match == '' }}
run: |
echo "The input version format is not correct, please respect:\
major.minor.patch or major.minor.patch-beta<number> format. \
example: 7.4.3 or 7.4.3-beta1"
exit 1
- uses: actions/checkout@v2
- name: Set intermedia variables
@@ -34,13 +59,13 @@ jobs:
echo "::set-output name=branch_exist::$(git ls-remote --heads https://github.com/grafana/grafana.git v${{ steps.regex-match.outputs.group1 }}.x | wc -l)"
- name: Check input version is aligned with branch(not main)
if: steps.intermedia.outputs.branch_exist != '0' && !contains(steps.intermedia.outputs.short_ref, steps.intermedia.outputs.branch_name)
if: ${{ github.event.inputs.version != '' && steps.intermedia.outputs.branch_exist != '0' && !contains(steps.intermedia.outputs.short_ref, steps.intermedia.outputs.branch_name) }}
run: |
echo " You need to run the workflow on branch v${{steps.regex-match.outputs.group1}}.x
exit 1
- name: Check input version is aligned with branch(main)
if: steps.intermedia.outputs.branch_exist == '0' && !contains(steps.intermedia.outputs.short_ref, 'main')
if: ${{ github.event.inputs.version != '' && steps.intermedia.outputs.branch_exist == '0' && !contains(steps.intermedia.outputs.short_ref, 'main') }}
run: |
echo "When you want to deliver a new new minor version, you might want to create a new branch first \
with naming convention v[major].[minor].x, and just run the workflow on that branch. \
@@ -53,13 +78,21 @@ jobs:
repository: "grafana/grafana-github-actions"
path: ./actions
ref: main
- uses: actions/setup-node@v2.4.1
- uses: actions/setup-node@v2.5.1
with:
node-version: '14'
- name: Install Actions
run: npm install --production --prefix ./actions
- name: Run bump version
- name: Run bump version (manually invoked)
if: ${{ github.event.inputs.version != '' }}
uses: ./actions/bump-version
with:
token: ${{secrets.GH_BOT_ACCESS_TOKEN}}
metricsWriteAPIKey: ${{secrets.GRAFANA_MISC_STATS_API_KEY}}
token: ${{ secrets.GH_BOT_ACCESS_TOKEN }}
metricsWriteAPIKey: ${{ secrets.GRAFANA_MISC_STATS_API_KEY }}
- name: Run bump version (workflow invoked)
if: ${{ inputs.version_call != '' }}
uses: ./actions/bump-version
with:
version_call: ${{ inputs.version_call }}
token: ${{ secrets.token }}
metricsWriteAPIKey: ${{ secrets.metricsWriteAPIKey }}
+39
View File
@@ -0,0 +1,39 @@
name: Close milestone
on:
workflow_dispatch:
inputs:
version:
required: true
description: Needs to match, exactly, the name of a milestone
workflow_call:
inputs:
version_call:
description: Needs to match, exactly, the name of a milestone
required: true
type: string
secrets:
token:
required: true
jobs:
main:
runs-on: ubuntu-latest
steps:
- name: Checkout Actions
uses: actions/checkout@v2
with:
repository: "grafana/grafana-github-actions"
path: ./actions
ref: main
- name: Install Actions
run: npm install --production --prefix ./actions
- name: Close milestone (manually invoked)
if: ${{ github.event.inputs.version != '' }}
uses: ./actions/close-milestone
with:
token: ${{ secrets.GH_BOT_ACCESS_TOKEN }}
- name: Close milestone (workflow invoked)
if: ${{ inputs.version_call != '' }}
uses: ./actions/close-milestone
with:
version_call: ${{ inputs.version_call }}
token: ${{ secrets.token }}
+1 -1
View File
@@ -1,7 +1,7 @@
name: Run commands when issues are labeled or comments added
on:
issues:
types: [labeled]
types: [labeled, unlabeled]
issue_comment:
types: [created]
@@ -0,0 +1,141 @@
name: Levitate / Detect breaking changes
on: pull_request
jobs:
buildPR:
name: Build PR
runs-on: ubuntu-latest
defaults:
run:
working-directory: './pr'
steps:
- uses: actions/checkout@v2
with:
path: './pr'
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "::set-output name=dir::$(yarn config get cacheFolder)"
- name: Restore yarn cache
uses: actions/cache@v2
id: yarn-cache
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: yarn-cache-folder-${{ hashFiles('**/yarn.lock', '.yarnrc.yml') }}
restore-keys: |
yarn-cache-folder-
- name: Install dependencies
run: yarn install --immutable
- name: Build packages
run: yarn packages:build
- name: Zip built packages
run: zip -r ./pr_built_packages.zip ./packages/**/dist
- name: Upload build output as artifact
uses: actions/upload-artifact@v2
with:
name: buildPr
path: './pr/pr_built_packages.zip'
buildMain:
name: Build Main
runs-on: ubuntu-latest
defaults:
run:
working-directory: './main'
steps:
- uses: actions/checkout@v2
with:
path: './main'
ref: 'main'
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "::set-output name=dir::$(yarn config get cacheFolder)"
- name: Restore yarn cache
uses: actions/cache@v2
id: yarn-cache
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: yarn-cache-folder-${{ hashFiles('**/yarn.lock', '.yarnrc.yml') }}
restore-keys: |
yarn-cache-folder-
- name: Install dependencies
run: yarn install --immutable
- name: Build packages
run: yarn packages:build
- name: Zip built packages
run: zip -r ./main_built_packages.zip ./packages/**/dist
- name: Upload build output as artifact
uses: actions/upload-artifact@v2
with:
name: buildMain
path: './main/main_built_packages.zip'
Detect:
name: Detect breaking changes
runs-on: ubuntu-latest
needs: ['buildPR', 'buildMain']
env:
GITHUB_STEP_NUMBER: 7
steps:
- uses: actions/checkout@v2
- name: Get built packages from pr
uses: actions/download-artifact@v2
with:
name: buildPr
- name: Get built packages from main
uses: actions/download-artifact@v2
with:
name: buildMain
- name: Unzip artifact from pr
run: unzip pr_built_packages.zip -d ./pr && rm pr_built_packages.zip
- name: Unzip artifact from main
run: unzip main_built_packages.zip -d ./main && rm main_built_packages.zip
- name: Get link for the Github Action job
id: job
uses: actions/github-script@v5
with:
script: |
const script = require('./.github/workflows/scripts/pr-get-job-link.js')
await script({github, context, core})
- name: Detect breaking changes
id: breaking-changes
run: ./scripts/check-breaking-changes.sh
env:
FORCE_COLOR: 3
GITHUB_JOB_LINK: ${{ steps.job.outputs.link }}
- name: Persisting the check output
run: |
mkdir -p ./levitate
echo "{ \"exit_code\": ${{ steps.breaking-changes.outputs.is_breaking }}, \"message\": \"${{ steps.breaking-changes.outputs.message }}\", \"job_link\": \"${{ steps.job.outputs.link }}#step:${GITHUB_STEP_NUMBER}:1\" }" > ./levitate/result.json
- name: Upload check output as artifact
uses: actions/upload-artifact@v2
with:
name: levitate
path: levitate/
- name: Exit
run: exit ${{ steps.breaking-changes.outputs.is_breaking }}
shell: bash
@@ -0,0 +1,163 @@
name: Levitate / Report breaking changes
on:
workflow_run:
workflows: ["Levitate / Detect breaking changes"]
types: [completed]
jobs:
notify:
name: Report
runs-on: ubuntu-latest
env:
ARTIFACT_FOLDER: '${{ github.workspace }}/tmp'
ARTIFACT_NAME: 'levitate'
steps:
- uses: actions/checkout@v2
- name: 'Download artifact'
uses: actions/github-script@v5
env:
RUN_ID: ${{ github.event.workflow_run.id }}
with:
script: |
const fs = require('fs');
const { owner, repo } = context.repo;
const runId = process.env.RUN_ID;
const artifactName = process.env.ARTIFACT_NAME;
const artifactFolder = process.env.ARTIFACT_FOLDER;
const artifacts = await github.rest.actions.listWorkflowRunArtifacts({
owner,
repo,
run_id: runId,
});
const artifact = artifacts.data.artifacts.find(a => a.name === artifactName);
if (!artifact) {
throw new Error(`Could not find artifact ${ artifactName } in workflow (${ runId })`);
}
const download = await github.rest.actions.downloadArtifact({
owner,
repo,
artifact_id: artifact.id,
archive_format: 'zip',
});
fs.mkdirSync(artifactFolder, { recursive: true });
fs.writeFileSync(`${ artifactFolder }/${ artifactName }.zip`, Buffer.from(download.data));
- name: Unzip artifact
run: unzip "${ARTIFACT_FOLDER}/${ARTIFACT_NAME}.zip" -d "${ARTIFACT_FOLDER}"
- name: Parsing levitate result
uses: actions/github-script@v5
id: levitate-run
with:
script: |
const filePath = `${ process.env.ARTIFACT_FOLDER }/result.json`;
const script = require('./.github/workflows/scripts/json-file-to-job-output.js');
await script({ core, filePath });
- name: Check if "breaking change" label exists
id: does-label-exist
uses: actions/github-script@v5
env:
PR_NUMBER: ${{ github.event.workflow_run.pull_requests[0].number }}
with:
script: |
const { data } = await github.rest.issues.listLabelsOnIssue({
issue_number: process.env.PR_NUMBER,
owner: context.repo.owner,
repo: context.repo.repo,
});
const labels = data.map(({ name }) => name);
const doesExist = labels.includes('breaking change');
return doesExist ? 1 : 0;
- name: Comment on PR
if: ${{ steps.levitate-run.outputs.exit_code == 1 }}
uses: marocchino/sticky-pull-request-comment@v2
with:
number: ${{ github.event.workflow_run.pull_requests[0].number }}
message: |
⚠️ &nbsp;&nbsp;**Possible breaking changes**
_(Open the links below in a new tab to go to the correct steps)_
${{ steps.levitate-run.outputs.message }}
[Check console output](${{ steps.levitate-run.outputs.job_link }})
- name: Remove comment on PR
if: ${{ steps.levitate-run.outputs.exit_code == 0 }}
uses: marocchino/sticky-pull-request-comment@v2
with:
number: ${{ github.event.workflow_run.pull_requests[0].number }}
delete: true
- name: Add "breaking change" label
if: ${{ steps.levitate-run.outputs.exit_code == 1 && steps.does-label-exist.outputs.result == 0 }}
uses: actions/github-script@v5
env:
PR_NUMBER: ${{ github.event.workflow_run.pull_requests[0].number }}
with:
script: |
await github.rest.issues.addLabels({
issue_number: process.env.PR_NUMBER,
owner: context.repo.owner,
repo: context.repo.repo,
labels: ['breaking change']
})
- name: Remove "breaking change" label
if: ${{ steps.levitate-run.outputs.exit_code == 0 && steps.does-label-exist.outputs.result == 1 }}
uses: actions/github-script@v5
env:
PR_NUMBER: ${{ github.event.workflow_run.pull_requests[0].number }}
with:
script: |
await github.rest.issues.removeLabel({
issue_number: process.env.PR_NUMBER,
owner: context.repo.owner,
repo: context.repo.repo,
name: 'breaking change'
})
# This is very weird, the actual request goes through (comes back with a 201), but does not assign the team.
# Related issue: https://github.com/renovatebot/renovate/issues/1908
- name: Add "grafana/plugins-platform-frontend" as a reviewer
if: ${{ steps.levitate-run.outputs.exit_code == 1 }}
uses: actions/github-script@v5
env:
PR_NUMBER: ${{ github.event.workflow_run.pull_requests[0].number }}
with:
script: |
await github.rest.pulls.requestReviewers({
pull_number: process.env.PR_NUMBER,
owner: context.repo.owner,
repo: context.repo.repo,
reviewers: [],
team_reviewers: ['grafana/plugins-platform-frontend']
});
- name: Remove "grafana/plugins-platform-frontend" from the list of reviewers
if: ${{ steps.levitate-run.outputs.exit_code == 0 }}
uses: actions/github-script@v5
env:
PR_NUMBER: ${{ github.event.workflow_run.pull_requests[0].number }}
with:
script: |
await github.rest.pulls.removeRequestedReviewers({
pull_number: process.env.PR_NUMBER,
owner: context.repo.owner,
repo: context.repo.repo,
reviewers: [],
team_reviewers: ['grafana/plugins-platform-frontend']
});
+21
View File
@@ -0,0 +1,21 @@
name: Close Milestone
on:
workflow_dispatch:
inputs:
version_input:
description: 'The version to be released please respect: major.minor.patch or major.minor.patch-beta<number> format. example: 7.4.3 or 7.4.3-beta1'
required: true
jobs:
call-remove-milestone:
uses: grafana/grafana/.github/workflows/remove-milestone.yml@main
with:
version_call: ${{ github.event.inputs.version_input }}
secrets:
token: ${{ secrets.GH_BOT_ACCESS_TOKEN }}
call-close-milestone:
uses: grafana/grafana/.github/workflows/close-milestone.yml@main
with:
version_call: ${{ github.event.inputs.version_input }}
secrets:
token: ${{ secrets.GH_BOT_ACCESS_TOKEN }}
needs: call-remove-milestone
+33
View File
@@ -0,0 +1,33 @@
name: PR Checks
on:
pull_request_target:
types:
- opened
- reopened
- synchronize
- ready_for_review
- labeled
- unlabeled
issues:
types:
- milestoned
- demilestoned
jobs:
main:
runs-on: ubuntu-latest
if: github.event.pull_request.draft == false
steps:
- name: Checkout Actions
uses: actions/checkout@v2
with:
repository: "grafana/grafana-github-actions"
path: ./actions
ref: main
- name: Install Actions
run: npm install --production --prefix ./actions
- name: Run PR Checks
uses: ./actions/pr-checks
with:
token: ${{secrets.GITHUB_TOKEN}}
configPath: pr-checks
+17
View File
@@ -0,0 +1,17 @@
name: Run when PRs are closed
on:
pull_request:
types:
- closed
jobs:
close_job:
# this job will only run if the PR has been closed without being merged
if: github.event.pull_request.merged == false
runs-on: ubuntu-latest
steps:
- run: |
echo PR #${{ github.event.number }} has been closed without being merged, removing milestone.
gh pr edit ${{ github.event.number }} --milestone "" --repo $GITHUB_REPOSITORY
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+23
View File
@@ -0,0 +1,23 @@
name: Prepare release
on:
workflow_dispatch:
inputs:
version_input:
description: 'The version to be released please respect: major.minor.patch or major.minor.patch-beta<number> format. example: 7.4.3 or 7.4.3-beta1'
required: true
jobs:
call-bump-version:
uses: grafana/grafana/.github/workflows/bump-version.yml@main
with:
version_call: ${{ github.event.inputs.version_input }}
secrets:
token: ${{ secrets.GH_BOT_ACCESS_TOKEN }}
metricsWriteAPIKey: ${{ secrets.GRAFANA_MISC_STATS_API_KEY }}
call-update-changelog:
uses: grafana/grafana/.github/workflows/update-changelog.yml@main
with:
version_call: ${{ github.event.inputs.version_input }}
secrets:
token: ${{ secrets.GH_BOT_ACCESS_TOKEN }}
metricsWriteAPIKey: ${{ secrets.GRAFANA_MISC_STATS_API_KEY }}
needs: call-bump-version
+2 -2
View File
@@ -17,14 +17,14 @@ jobs:
- uses: actions/checkout@v1
- run: git clone --single-branch --no-tags --depth 1 -b master https://grafanabot:${{ secrets.GH_BOT_ACCESS_TOKEN }}@github.com/grafana/website-sync ./.github/actions/website-sync
- name: generate-packages-docs
uses: actions/setup-node@v2.4.1
uses: actions/setup-node@v2.5.1
id: generate-docs
with:
node-version: '14'
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "::set-output name=dir::$(yarn config get cacheFolder)"
- uses: actions/cache@v2.1.6
- uses: actions/cache@v2.1.7
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: yarn-${{ hashFiles('**/yarn.lock') }}
+39
View File
@@ -0,0 +1,39 @@
name: Remove milestone
on:
workflow_dispatch:
inputs:
version:
required: true
description: Needs to match, exactly, the name of a milestone
workflow_call:
inputs:
version_call:
description: Needs to match, exactly, the name of a milestone
required: true
type: string
secrets:
token:
required: true
jobs:
main:
runs-on: ubuntu-latest
steps:
- name: Checkout Actions
uses: actions/checkout@v2
with:
repository: "grafana/grafana-github-actions"
path: ./actions
ref: main
- name: Install Actions
run: npm install --production --prefix ./actions
- name: Remove milestone from open issues (manually invoked)
if: ${{ github.event.inputs.version != '' }}
uses: ./actions/remove-milestone
with:
token: ${{ secrets.GH_BOT_ACCESS_TOKEN }}
- name: Remove milestone from open issues (workflow invoked)
if: ${{ inputs.version_call != '' }}
uses: ./actions/remove-milestone
with:
version_call: ${{ inputs.version_call }}
token: ${{ secrets.token }}
@@ -0,0 +1,27 @@
module.exports = async ({ core, filePath }) => {
try {
const fs = require('fs');
const content = await readFile(fs, filePath);
const result = JSON.parse(content);
core.startGroup('Parsing json file...');
for (const property in result) {
core.info(`${property} <- ${result[property]}`);
core.setOutput(property, result[property]);
}
core.endGroup();
} catch (error) {
core.restFailed(error.message);
}
}
async function readFile(fs, path) {
return new Promise((resolve, reject) => {
fs.readFile(path, (error, data) => {
if (error) return reject(error);
return resolve(data);
});
});
}
@@ -0,0 +1,9 @@
module.exports = async ({ github, context, core }) => {
const { owner, repo } = context.repo;
const url = `https://api.github.com/repos/${owner}/${repo}/actions/runs/${context.runId}/jobs`
const result = await github.request(url)
const link = `https://github.com/grafana/grafana/runs/${result.data.jobs[0].id}?check_suite_focus=true`;
core.setOutput('link', link);
}
+24 -5
View File
@@ -3,8 +3,19 @@ on:
workflow_dispatch:
inputs:
version:
required: true
required: true
description: Needs to match, exactly, the name of a milestone
workflow_call:
inputs:
version_call:
description: Needs to match, exactly, the name of a milestone
required: true
type: string
secrets:
token:
required: true
metricsWriteAPIKey:
required: true
jobs:
main:
runs-on: ubuntu-latest
@@ -14,11 +25,19 @@ jobs:
with:
repository: "grafana/grafana-github-actions"
path: ./actions
ref: main
ref: main
- name: Install Actions
run: npm install --production --prefix ./actions
- name: Run update changelog
- name: Run update changelog (manually invoked)
if: ${{ github.event.inputs.version != '' }}
uses: ./actions/update-changelog
with:
token: ${{secrets.GH_BOT_ACCESS_TOKEN}}
metricsWriteAPIKey: ${{secrets.GRAFANA_MISC_STATS_API_KEY}}
token: ${{ secrets.GH_BOT_ACCESS_TOKEN }}
metricsWriteAPIKey: ${{ secrets.GRAFANA_MISC_STATS_API_KEY }}
- name: Run update changelog (workflow invoked)
if: ${{ inputs.version_call != '' }}
uses: ./actions/update-changelog
with:
version_call: ${{ inputs.version_call }}
token: ${{ secrets.token }}
metricsWriteAPIKey: ${{ secrets.metricsWriteAPIKey }}
+15
View File
@@ -13,6 +13,7 @@ public/dist/tsconfig.tsbuildinfo
/emails/dist
/reports
/e2e/tmp
/scripts/grafana-server/tmp
vendor/
/docs/menu.yaml
/requests
@@ -136,6 +137,12 @@ compilation-stats.json
/e2e/**/screenshots
!/e2e/**/screenshots/expected/*
/e2e/**/videos/*
/e2e/benchmarks/**/results/*
/e2e/benchmarks/**/results
/e2e/build_results.zip
# grafana server
/scripts/grafana-server/server.log
# a11y tests
/pa11y-ci-results.json
@@ -149,3 +156,11 @@ compilation-stats.json
# auto generated Go files
*_gen.go
!pkg/services/featuremgmt/toggles_gen.go
# Auto-generated localisation files
public/locales/_build/
public/locales/**/*.js
deployment_tools_config.json
+32
View File
@@ -0,0 +1,32 @@
{
"locales": [
"en",
"fr",
"es",
"pseudo-LOCALE"
],
"catalogs": [
{
"path": "public/locales/{locale}/messages",
"include": [
"public/app"
],
"exclude": [
"**/*.d.ts",
"**/*.test.ts",
"**/node_modules/**",
"public/app/plugins"
]
}
],
"fallbackLocales": {
"pseudo-LOCALE": "en",
"default": "en"
},
"pseudoLocale": "pseudo-LOCALE",
"sourceLocale": "en",
"format": "po",
"formatOptions": {
"lineNumbers": false
}
}
+1
View File
@@ -0,0 +1 @@
v16.13.2
+3
View File
@@ -6,6 +6,9 @@ var config = {
chromeLaunchConfig: {
args: ['--no-sandbox'],
},
// see https://github.com/grafana/grafana/pull/41693#issuecomment-979921463 for context
// on why we're ignoring singleValue/react-select-*-placeholder elements
hideElements: '#updateVersion, [class*="-singleValue"], [id^="react-select-"][id$="-placeholder"]',
},
urls: [
+3
View File
@@ -6,6 +6,9 @@ var config = {
chromeLaunchConfig: {
args: ['--no-sandbox'],
},
// see https://github.com/grafana/grafana/pull/41693#issuecomment-979921463 for context
// on why we're ignoring singleValue/react-select-*-placeholder elements
hideElements: '#updateVersion, [class*="-singleValue"], [id^="react-select-"][id$="-placeholder"]',
},
urls: [
+1
View File
@@ -7,6 +7,7 @@ public/vendor/
vendor/
/data/
e2e/tmp
scripts/grafana-server/tmp
public/build/
public/sass/*.generated.scss
devenv/
+6
View File
@@ -0,0 +1,6 @@
{
"eslint.packageManager": "yarn",
"eslint.nodePath": ".yarn/sdks",
"workspace.workspaceFolderCheckCwd": false,
"tsserver.tsdk": ".yarn/sdks/typescript/lib"
}
File diff suppressed because one or more lines are too long
+3 -3
View File
@@ -11,10 +11,10 @@ const absRequire = (createRequire || createRequireFromPath)(absPnpApiPath);
if (existsSync(absPnpApiPath)) {
if (!process.versions.pnp) {
// Setup the environment to be able to require eslint/lib/api.js
// Setup the environment to be able to require eslint
require(absPnpApiPath).setup();
}
}
// Defer to the real eslint/lib/api.js your application uses
module.exports = absRequire(`eslint/lib/api.js`);
// Defer to the real eslint your application uses
module.exports = absRequire(`eslint`);
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "eslint",
"version": "7.21.0-sdk",
"version": "7.28.0-sdk",
"main": "./lib/api.js",
"type": "commonjs"
}
+1 -1
View File
@@ -2,5 +2,5 @@
# Manual changes might be lost!
integrations:
- vim
- vscode
- vim
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "stylelint",
"version": "13.13.1-sdk",
"version": "14.0.1-sdk",
"main": "lib/index.js",
"type": "commonjs"
}
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "typescript",
"version": "4.4.3-sdk",
"version": "4.4.4-sdk",
"main": "./lib/typescript.js",
"type": "commonjs"
}
+23 -19
View File
@@ -1,5 +1,6 @@
enableTelemetry: false
nodeLinker: "pnp"
nodeLinker: pnp
packageExtensions:
"@grafana/slate-react@0.22.10-grafana":
@@ -8,36 +9,35 @@ packageExtensions:
"@mdx-js/loader@1.6.22":
peerDependencies:
react: 17.0.1
"@storybook/addon-essentials@6.3.7":
"@storybook/addon-docs@6.4.13":
peerDependencies:
"@storybook/components": 6.3.7
"@storybook/core-events": 6.3.7
"@storybook/theming": 6.3.7
"@storybook/addon-knobs@6.3.0":
dependencies:
copy-to-clipboard: ^3.3.1
"@storybook/core-server@6.3.7":
"@storybook/manager-webpack5": 6.4.13
"@storybook/addon-essentials@6.4.13":
peerDependencies:
"@storybook/components": 6.4.13
"@storybook/core-events": 6.4.13
"@storybook/manager-webpack5": 6.4.13
"@storybook/theming": 6.4.13
"@storybook/core-server@6.4.13":
peerDependencies:
"@babel/core": ^7.0.0
"@storybook/core@6.3.7":
"@storybook/core@6.4.13":
peerDependencies:
"@babel/core": ^7.0.0
"@storybook/manager-webpack5": 6.3.7
webpack: 5.51.1
"@storybook/csf-tools@6.3.7":
"@storybook/manager-webpack5": 6.4.13
"@storybook/csf-tools@6.4.13":
peerDependencies:
"@babel/core": ^7.0.0
"@storybook/react@6.3.7":
"@storybook/react@6.4.13":
peerDependencies:
"@storybook/manager-webpack5": 6.3.7
"@storybook/manager-webpack5": 6.4.13
doctrine@3.0.0:
dependencies:
assert: 2.0.0
moveable@0.26.0:
moveable@0.27.3:
dependencies:
"@daybrush/utils": 1.6.0
framework-utils: ^1.1.0
react-simple-compat: 1.2.1
rc-time-picker@3.7.3:
peerDependencies:
react: 17.0.1
@@ -46,7 +46,10 @@ packageExtensions:
peerDependencies:
react: 17.0.1
react-dom: 17.0.1
react-compat-moveable@0.14.0:
react-compat-css-styled@1.0.8:
dependencies:
react-simple-compat: 1.2.1
react-compat-moveable@0.15.2:
dependencies:
"@egjs/agent": ^2.2.1
"@egjs/children-differ": ^1.0.1
@@ -54,6 +57,7 @@ packageExtensions:
css-to-mat: ^1.0.3
gesto: ^1.4.0
overlap-area: ^1.0.0
react-simple-compat: 1.2.1
peerDependencies:
framework-utils: ^1.1.0
react-dev-utils@11.0.4:
@@ -78,4 +82,4 @@ plugins:
- path: .yarn/plugins/@yarnpkg/plugin-outdated.cjs
spec: "https://mskelton.dev/yarn-outdated/v2"
yarnPath: .yarn/releases/yarn-3.1.0.cjs
yarnPath: .yarn/releases/yarn-3.1.1.cjs
+331
View File
@@ -1,3 +1,299 @@
<!-- 8.4.0-beta1 START -->
# 8.4.0-beta1 (2022-02-02)
### Features and enhancements
- **Alerting:** Support WeCom as a contact point type. [#40975](https://github.com/grafana/grafana/pull/40975), [@smallpath](https://github.com/smallpath)
- **Alerting:** UI for mute timings. [#41578](https://github.com/grafana/grafana/pull/41578), [@nathanrodman](https://github.com/nathanrodman)
- **Alerting:** add settings for peer reconnection in HA mode. [#42300](https://github.com/grafana/grafana/pull/42300), [@JohnnyQQQQ](https://github.com/JohnnyQQQQ)
- **Auth:** implement auto_sign_up for auth.jwt. [#37040](https://github.com/grafana/grafana/pull/37040), [@Roguelazer](https://github.com/Roguelazer)
- **Dashboard:** Add Show unknown variables toggle to dashboard settings. [#41854](https://github.com/grafana/grafana/pull/41854), [@hugohaggmark](https://github.com/hugohaggmark)
- **Instrumentation:** Logger migration from log15 to gokit/log. [#41636](https://github.com/grafana/grafana/pull/41636), [@ying-jeanne](https://github.com/ying-jeanne)
- **MSSQL:** Change regex to validate Provider connection string. [#40248](https://github.com/grafana/grafana/pull/40248), [@ianselmi](https://github.com/ianselmi)
- **MSSQL:** Configuration of certificate verification for TLS connection. [#31865](https://github.com/grafana/grafana/pull/31865), [@mortenaa](https://github.com/mortenaa)
- **Middleware:** Don't require HTTPS for HSTS headers to be emitted. [#35147](https://github.com/grafana/grafana/pull/35147), [@alexmv](https://github.com/alexmv)
- **Navigation:** Implement Keyboard Navigation. [#41618](https://github.com/grafana/grafana/pull/41618), [@axelavargas](https://github.com/axelavargas)
- **News:** Reload feed when changing the time range or refreshing. [#42217](https://github.com/grafana/grafana/pull/42217), [@ashharrison90](https://github.com/ashharrison90)
- **UI/Plot:** Implement keyboard controls for plot cursor. [#42244](https://github.com/grafana/grafana/pull/42244), [@kaydelaney](https://github.com/kaydelaney)
<!-- 8.4.0-beta1 END -->
<!-- 8.3.4 START -->
# 8.3.4 (2022-01-17)
### Features and enhancements
- **Alerting:** Allow configuration of non-ready alertmanagers. [#43063](https://github.com/grafana/grafana/pull/43063), [@alexweav](https://github.com/alexweav)
- **Alerting:** Allow customization of Google chat message. [#43568](https://github.com/grafana/grafana/pull/43568), [@alexweav](https://github.com/alexweav)
- **Alerting:** Allow customization of Google chat message (#43568). [#43723](https://github.com/grafana/grafana/pull/43723), [@alexweav](https://github.com/alexweav)
- **AppPlugins:** Support app plugins with only default nav. [#43016](https://github.com/grafana/grafana/pull/43016), [@torkelo](https://github.com/torkelo)
- **InfluxDB:** InfluxQL: query editor: skip fields in metadata queries. [#42543](https://github.com/grafana/grafana/pull/42543), [@gabor](https://github.com/gabor)
- **Postgres/MySQL/MSSQL:** Cancel in-flight SQL query if user cancels query in grafana. [#43890](https://github.com/grafana/grafana/pull/43890), [@mdvictor](https://github.com/mdvictor)
- **Prometheus:** Forward oauth tokens after prometheus datasource migration. [#43686](https://github.com/grafana/grafana/pull/43686), [@MasslessParticle](https://github.com/MasslessParticle)
### Bug fixes
- **Azure Monitor:** Bug fix for variable interpolations in metrics dropdowns. [#43251](https://github.com/grafana/grafana/pull/43251), [@sarahzinger](https://github.com/sarahzinger)
- **Azure Monitor:** Improved error messages for variable queries. [#43213](https://github.com/grafana/grafana/pull/43213), [@sunker](https://github.com/sunker)
- **CloudMonitoring:** Fixes broken variable queries that use group bys. [#43914](https://github.com/grafana/grafana/pull/43914), [@sunker](https://github.com/sunker)
- **Configuration:** You can now see your expired API keys if you have no active ones. [#42452](https://github.com/grafana/grafana/pull/42452), [@ashharrison90](https://github.com/ashharrison90)
- **Elasticsearch:** Fix handling multiple datalinks for a single field. [#44029](https://github.com/grafana/grafana/pull/44029), [@Elfo404](https://github.com/Elfo404)
- **Export:** Fix error being thrown when exporting dashboards using query variables that reference the default datasource. [#44034](https://github.com/grafana/grafana/pull/44034), [@ashharrison90](https://github.com/ashharrison90)
- **ImportDashboard:** Fixes issue with importing dashboard and name ending up in uid. [#43451](https://github.com/grafana/grafana/pull/43451), [@torkelo](https://github.com/torkelo)
- **Login:** Page no longer overflows on mobile. [#43739](https://github.com/grafana/grafana/pull/43739), [@ashharrison90](https://github.com/ashharrison90)
- **Plugins:** Set backend metadata property for core plugins. [#43349](https://github.com/grafana/grafana/pull/43349), [@marefr](https://github.com/marefr)
- **Prometheus:** Fill missing steps with null values. [#43622](https://github.com/grafana/grafana/pull/43622), [@ivanahuckova](https://github.com/ivanahuckova)
- **Prometheus:** Fix interpolation of $\_\_rate_interval variable. [#44035](https://github.com/grafana/grafana/pull/44035), [@ivanahuckova](https://github.com/ivanahuckova)
- **Prometheus:** Interpolate variables with curly brackets syntax. [#42927](https://github.com/grafana/grafana/pull/42927), [@ivanahuckova](https://github.com/ivanahuckova)
- **Prometheus:** Respect the http-method data source setting. [#42753](https://github.com/grafana/grafana/pull/42753), [@gabor](https://github.com/gabor)
- **Table:** Fixes issue with field config applied to wrong fields when hiding columns. [#43376](https://github.com/grafana/grafana/pull/43376), [@torkelo](https://github.com/torkelo)
- **Toolkit:** Fix bug with rootUrls not being properly parsed when signing a private plugin. [#43014](https://github.com/grafana/grafana/pull/43014), [@dessen-xu](https://github.com/dessen-xu)
- **Variables:** Fix so data source variables are added to adhoc configuration. [#43881](https://github.com/grafana/grafana/pull/43881), [@hugohaggmark](https://github.com/hugohaggmark)
### Plugin development fixes & changes
- **Toolkit:** Revert build config so tslib is bundled with plugins to prevent plugins from crashing. [#43556](https://github.com/grafana/grafana/pull/43556), [@mckn](https://github.com/mckn)
<!-- 8.3.4 END -->
<!-- 8.3.3 START -->
# 8.3.3 (2021-12-10)
### Features and enhancements
- **BarChart:** Use new data error view component to show actions in panel edit. [#42474](https://github.com/grafana/grafana/pull/42474), [@torkelo](https://github.com/torkelo)
- **CloudMonitor:** Iterate over pageToken for resources. [#42546](https://github.com/grafana/grafana/pull/42546), [@iwysiu](https://github.com/iwysiu)
- **Macaron:** Prevent WriteHeader invalid HTTP status code panic. [#42973](https://github.com/grafana/grafana/pull/42973), [@bergquist](https://github.com/bergquist)
### Bug fixes
- **AnnoListPanel:** Fix interpolation of variables in tags. [#42318](https://github.com/grafana/grafana/pull/42318), [@francoisdtm](https://github.com/francoisdtm)
- **CloudWatch:** Allow queries to have no dimensions specified. [#42800](https://github.com/grafana/grafana/pull/42800), [@sunker](https://github.com/sunker)
- **CloudWatch:** Fix broken queries for users migrating from 8.2.4/8.2.5 to 8.3.0. [#42611](https://github.com/grafana/grafana/pull/42611), [@sunker](https://github.com/sunker)
- **CloudWatch:** Make sure MatchExact flag gets the right value. [#42621](https://github.com/grafana/grafana/pull/42621), [@sunker](https://github.com/sunker)
- **Dashboards:** Fix so that empty folders can be deleted from the manage dashboards/folders page. [#42527](https://github.com/grafana/grafana/pull/42527), [@ashharrison90](https://github.com/ashharrison90)
- **InfluxDB:** Improve handling of metadata query errors in InfluxQL. [#42500](https://github.com/grafana/grafana/pull/42500), [@gabor](https://github.com/gabor)
- **Loki:** Fix adding of ad hoc filters for queries with parser and line_format expressions. [#42590](https://github.com/grafana/grafana/pull/42590), [@ivanahuckova](https://github.com/ivanahuckova)
- **Prometheus:** Fix running of exemplar queries for non-histogram metrics. [#42749](https://github.com/grafana/grafana/pull/42749), [@ivanahuckova](https://github.com/ivanahuckova)
- **Prometheus:** Interpolate template variables in interval. [#42637](https://github.com/grafana/grafana/pull/42637), [@ivanahuckova](https://github.com/ivanahuckova)
- **StateTimeline:** Fix toolitp not showing when for frames with multiple fields. [#42741](https://github.com/grafana/grafana/pull/42741), [@dprokop](https://github.com/dprokop)
- **TraceView:** Fix virtualized scrolling when trace view is opened in right pane in Explore. [#42480](https://github.com/grafana/grafana/pull/42480), [@autoric](https://github.com/autoric)
- **Variables:** Fix repeating panels for on time range changed variables. [#42828](https://github.com/grafana/grafana/pull/42828), [@hugohaggmark](https://github.com/hugohaggmark)
- **Variables:** Fix so queryparam option works for scoped variables. [#42742](https://github.com/grafana/grafana/pull/42742), [@hugohaggmark](https://github.com/hugohaggmark)
<!-- 8.3.3 END -->
<!-- 8.3.2 START -->
# 8.3.2 (2021-12-10)
- **Security**: Fixes CVE-2021-43813 and CVE-2021-43815. For more information, see our [blog](https://grafana.com/blog/2021/12/10/grafana-8.3.2-and-7.5.12-released-with-moderate-severity-security-fix/
<!-- 8.3.2 END -->
<!-- 8.3.1 START -->
# 8.3.1 (2021-12-07)
- **Security**: Fixes CVE-2021-43798. For more information, see our [blog](https://grafana.com/blog/2021/12/07/grafana-8.3.1-8.2.7-8.1.8-and-8.0.7-released-with-high-severity-security-fix/)
<!-- 8.3.1 END -->
<!-- 8.3.0 START -->
# 8.3.0 (2021-11-30)
### Features and enhancements
- **Alerting:** Prevent folders from being deleted when they contain alerts. [#42307](https://github.com/grafana/grafana/pull/42307), [@peterholmberg](https://github.com/peterholmberg)
- **Alerting:** Show full preview value in tooltip. [#42445](https://github.com/grafana/grafana/pull/42445), [@peterholmberg](https://github.com/peterholmberg)
- **BarGauge:** Limit title width when name is really long. [#42346](https://github.com/grafana/grafana/pull/42346), [@torkelo](https://github.com/torkelo)
- **CloudMonitoring:** Avoid to escape regexps in filters. [#41961](https://github.com/grafana/grafana/pull/41961), [@andresmgot](https://github.com/andresmgot)
- **CloudWatch:** Add support for AWS Metric Insights. [#42487](https://github.com/grafana/grafana/pull/42487), [@sunker](https://github.com/sunker)
- **TooltipPlugin:** Remove other panels' shared tooltip in edit panel. [#42187](https://github.com/grafana/grafana/pull/42187), [@mdvictor](https://github.com/mdvictor)
- **Visualizations:** Limit y label width to 40% of visualization width. [#42350](https://github.com/grafana/grafana/pull/42350), [@torkelo](https://github.com/torkelo)
### Bug fixes
- **Alerting:** Clear alerting rule evaluation errors after intermittent failures. [#42386](https://github.com/grafana/grafana/pull/42386), [@gotjosh](https://github.com/gotjosh)
- **Alerting:** Fix refresh on legacy Alert List panel. [#42322](https://github.com/grafana/grafana/pull/42322), [@peterholmberg](https://github.com/peterholmberg)
- **Dashboard:** Fix queries for panels with non-integer widths. [#42420](https://github.com/grafana/grafana/pull/42420), [@gabor](https://github.com/gabor)
- **Explore:** Fix url update inconsistency. [#42288](https://github.com/grafana/grafana/pull/42288), [@gabor](https://github.com/gabor)
- **Prometheus:** Fix range variables interpolation for time ranges smaller than 1 second. [#42242](https://github.com/grafana/grafana/pull/42242), [@ivanahuckova](https://github.com/ivanahuckova)
- **ValueMappings:** Fixes issue with regex value mapping that only sets color. [#42311](https://github.com/grafana/grafana/pull/42311), [@torkelo](https://github.com/torkelo)
<!-- 8.3.0 END -->
<!-- 8.3.0-beta2 START -->
# 8.3.0-beta2 (2021-11-25)
### Features and enhancements
- **Alerting:** Create DatasourceError alert if evaluation returns error. [#41869](https://github.com/grafana/grafana/pull/41869), [@gerobinson](https://github.com/gerobinson)
- **Alerting:** Make Unified Alerting enabled by default for those who do not use legacy alerting. [#42200](https://github.com/grafana/grafana/pull/42200), [@armandgrillet](https://github.com/armandgrillet)
- **Alerting:** Support mute timings configuration through the api for the embedded alert manager. [#41533](https://github.com/grafana/grafana/pull/41533), [@JohnnyQQQQ](https://github.com/JohnnyQQQQ)
- **CloudWatch:** Add missing AWS/Events metrics. [#42164](https://github.com/grafana/grafana/pull/42164), [@n2N8Z](https://github.com/n2N8Z)
- **Docs:** Add easier to find deprecation notices to certain data sources and to the changelog. [#41938](https://github.com/grafana/grafana/pull/41938), [@gabor](https://github.com/gabor)
- **Plugins Catalog:** Enable install controls based on the pluginAdminEnabled flag. [#41686](https://github.com/grafana/grafana/pull/41686), [@leventebalogh](https://github.com/leventebalogh)
- **Query caching:** Increase max_value_mb default to 10. (Enterprise)
- **Table:** Add space between values for the DefaultCell. [#42246](https://github.com/grafana/grafana/pull/42246), [@kirederik](https://github.com/kirederik)
- **Table:** Add space between values on JSONViewCell. [#42156](https://github.com/grafana/grafana/pull/42156), [@kirederik](https://github.com/kirederik)
- **Tracing:** Make query editors available in dashboard for Tempo and Zipkin. [#41974](https://github.com/grafana/grafana/pull/41974), [@ivanahuckova](https://github.com/ivanahuckova)
### Bug fixes
- **AccessControl:** Renamed `orgs` roles, removed `fixed:orgs:reader` introduced in beta1. [#42049](https://github.com/grafana/grafana/pull/42049), [@gamab](https://github.com/gamab)
- **Azure Monitor:** Add trap focus for modals in grafana/ui and other small a11y fixes for Azure Monitor. [#41449](https://github.com/grafana/grafana/pull/41449), [@sarahzinger](https://github.com/sarahzinger)
- **CodeEditor:** Prevent suggestions from being clipped. [#42120](https://github.com/grafana/grafana/pull/42120), [@kaydelaney](https://github.com/kaydelaney)
- **Dashboard:** Fix cache timeout persistence. [#42204](https://github.com/grafana/grafana/pull/42204), [@hugohaggmark](https://github.com/hugohaggmark)
- **Datasource:** Fix stable sort order of query responses. [#41868](https://github.com/grafana/grafana/pull/41868), [@marefr](https://github.com/marefr)
- **Explore:** Fix error in query history when removing last item. [#42179](https://github.com/grafana/grafana/pull/42179), [@gabor](https://github.com/gabor)
- **Logs:** Fix requesting of older logs when flipped order. [#41966](https://github.com/grafana/grafana/pull/41966), [@ivanahuckova](https://github.com/ivanahuckova)
- **Prometheus:** Fix running of health check query based on access mode. [#42189](https://github.com/grafana/grafana/pull/42189), [@ivanahuckova](https://github.com/ivanahuckova)
- **TextPanel:** Fix suggestions for existing panels. [#42195](https://github.com/grafana/grafana/pull/42195), [@hugohaggmark](https://github.com/hugohaggmark)
- **Tracing:** Fix incorrect indentations due to reoccurring spanIDs. [#41919](https://github.com/grafana/grafana/pull/41919), [@ivanahuckova](https://github.com/ivanahuckova)
- **Tracing:** Show start time of trace with milliseconds precision. [#42132](https://github.com/grafana/grafana/pull/42132), [@ivanahuckova](https://github.com/ivanahuckova)
- **Variables:** Make renamed or missing variable section expandable. [#41964](https://github.com/grafana/grafana/pull/41964), [@hugohaggmark](https://github.com/hugohaggmark)
### Breaking changes
### Grafana 8 Alerting enabled by default for installations that do not use legacy alerting
Starting with Grafana v8.3.0, if you have **not** explicitly disabled unified alerting and **do not** have legacy alerts set up you are automatically "migrated" to Grafana 8 Alerting.
A migration **from legacy to Grafana 8 Alerting** will never incur a data loss, as the previous data is kept around for rollback purposes. However, going from **Grafana 8 Alerting to legacy alerting** will delete all the data created for Grafana 8 Alerting. It is recommended that you **backup your database** before attempting a migration between systems.
If unclear, please verify the table below:
| `[alerting][enabled]` | `[unified_alerting][enabled]` | With Existing Legacy Alerts | Result |
| --------------------- | ----------------------------- | --------------------------- | ------------------ |
| `true` | `true` | N/A | Error |
| `true` | `false` | N/A | Legacy Alerting |
| `true` | not set | Yes | Legacy Alerting |
| `true` | not set | No | Grafana 8 Alerting |
| not set | `true` | N/A | Grafana 8 Alerting |
| not set | `false` | N/A | Legacy Alerting |
| not set | not set | Yes | Legacy Alerting |
| not set | not set | No | Grafana 8 Alerting |
| `false` | `true` | N/A | Grafana 8 Alerting |
| `false` | `false` | N/A | Alerting disabled |
| `false` | not set | N/A | Grafana 8 Alerting |
N/A in the "With Existing Legacy Alerts" column means that it does not matter if you have legacy alerts or not.
Issue [#42200](https://github.com/grafana/grafana/issues/42200)
### Keep Last State for "If execution error or timeout" when upgrading to Grafana 8 alerting
In Grafana 8.3.0-beta2 we changed how alert rules that use `Keep Last State` for `If execution error or timeout` are upgraded from Legacy Alerting to Grafana 8 alerting. In 8.3.0-beta1 and earlier, alert rules with `Keep Last State` for `If execution error or timeout` were changed to `Alerting` when upgrading from Legacy Alerting to Grafana 8 alerting. However, in 8.3.0-beta2 these alert rules are now upgraded to a new option called `Error`. With this option, on encountering an error evaluating an alert rule, Grafana creates a special alert called `DatasourceError` with the `rule_uid` and `ref_id` as labels and an annotation called `Error` with the error message. Issue [#41869](https://github.com/grafana/grafana/issues/41869)
### Deprecations
The access mode "browser" is deprecated in the following data sources and will be removed in a later release:
- Prometheus
- InfluxDB
- Elasticsearch Issue [#41938](https://github.com/grafana/grafana/issues/41938)
### Plugin development fixes & changes
- **Select:** Select menus now properly scroll during keyboard navigation. [#41917](https://github.com/grafana/grafana/pull/41917), [@ashharrison90](https://github.com/ashharrison90)
<!-- 8.3.0-beta2 END -->
<!-- 8.3.0-beta1 START -->
# 8.3.0-beta1 (2021-11-18)
### Features and enhancements
- **AccessControl:** Apply fine-grained access control to licensing. (Enterprise)
- **Alerting:** Add UI for contact point testing with custom annotations and labels. [#40491](https://github.com/grafana/grafana/pull/40491), [@nathanrodman](https://github.com/nathanrodman)
- **Alerting:** Make alert state indicator in panel header work with Grafana 8 alerts. [#38713](https://github.com/grafana/grafana/pull/38713), [@domasx2](https://github.com/domasx2)
- **Alerting:** Option for Discord notifier to use webhook name. [#40463](https://github.com/grafana/grafana/pull/40463), [@Skyebold](https://github.com/Skyebold)
- **Annotations:** Deprecate AnnotationsSrv. [#39631](https://github.com/grafana/grafana/pull/39631), [@hugohaggmark](https://github.com/hugohaggmark)
- **Auditing:** Add audit logs for unified alerting endpoints. (Enterprise)
- **Auditing:** Add endpoints (plugins, datasources, library elements). (Enterprise)
- **Auth:** Omit all base64 paddings in JWT tokens for the JWT auth. [#35602](https://github.com/grafana/grafana/pull/35602), [@gillg](https://github.com/gillg)
- **Azure Monitor:** Clean up fields when editing Metrics. [#41762](https://github.com/grafana/grafana/pull/41762), [@andresmgot](https://github.com/andresmgot)
- **AzureMonitor:** Add new starter dashboards. [#39876](https://github.com/grafana/grafana/pull/39876), [@jcolladokuri](https://github.com/jcolladokuri)
- **AzureMonitor:** Add starter dashboard for app monitoring with Application Insights. [#40725](https://github.com/grafana/grafana/pull/40725), [@jcolladokuri](https://github.com/jcolladokuri)
- **Barchart/Time series:** Allow x axis label. [#41142](https://github.com/grafana/grafana/pull/41142), [@oscarkilhed](https://github.com/oscarkilhed)
- **CLI:** Improve error handling for installing plugins. [#41257](https://github.com/grafana/grafana/pull/41257), [@marefr](https://github.com/marefr)
- **CloudMonitoring:** Migrate to use backend plugin SDK contracts. [#38650](https://github.com/grafana/grafana/pull/38650), [@idafurjes](https://github.com/idafurjes)
- **CloudWatch Logs:** Add retry strategy for hitting max concurrent queries. [#39290](https://github.com/grafana/grafana/pull/39290), [@aocenas](https://github.com/aocenas)
- **CloudWatch:** Add AWS RoboMaker metrics and dimension. [#41450](https://github.com/grafana/grafana/pull/41450), [@ilyastoli](https://github.com/ilyastoli)
- **CloudWatch:** Add AWS Transfer metrics and dimension. [#41168](https://github.com/grafana/grafana/pull/41168), [@ilyastoli](https://github.com/ilyastoli)
- **Dashboard:** replace datasource name with a reference object. [#33817](https://github.com/grafana/grafana/pull/33817), [@ryantxu](https://github.com/ryantxu)
- **Dashboards:** Show logs on time series when hovering. [#40110](https://github.com/grafana/grafana/pull/40110), [@ryantxu](https://github.com/ryantxu)
- **Elasticsearch:** Add support for Elasticsearch 8.0 (Beta). [#41729](https://github.com/grafana/grafana/pull/41729), [@Elfo404](https://github.com/Elfo404)
- **Elasticsearch:** Add time zone setting to Date Histogram aggregation. [#40882](https://github.com/grafana/grafana/pull/40882), [@Elfo404](https://github.com/Elfo404)
- **Elasticsearch:** Enable full range log volume histogram. [#41202](https://github.com/grafana/grafana/pull/41202), [@ifrost](https://github.com/ifrost)
- **Elasticsearch:** Full range logs volume. [#40700](https://github.com/grafana/grafana/pull/40700), [@ifrost](https://github.com/ifrost)
- **Explore:** Allow changing the graph type. [#40522](https://github.com/grafana/grafana/pull/40522), [@gabor](https://github.com/gabor)
- **Explore:** Show ANSI colors when highlighting matched words in the logs panel. [#40971](https://github.com/grafana/grafana/pull/40971), [@oliverfrye](https://github.com/oliverfrye)
- **Graph(old) panel:** Listen to events from Time series panel. [#41033](https://github.com/grafana/grafana/pull/41033), [@zoltanbedi](https://github.com/zoltanbedi)
- **Import:** Load gcom dashboards from URL. [#41799](https://github.com/grafana/grafana/pull/41799), [@ashharrison90](https://github.com/ashharrison90)
- **LibraryPanels:** Improves export and import of library panels between orgs. [#39214](https://github.com/grafana/grafana/pull/39214), [@hugohaggmark](https://github.com/hugohaggmark)
- **OAuth:** Support PKCE. [#39948](https://github.com/grafana/grafana/pull/39948), [@sakjur](https://github.com/sakjur)
- **Panel edit:** Overrides now highlight correctly when searching. [#41684](https://github.com/grafana/grafana/pull/41684), [@ashharrison90](https://github.com/ashharrison90)
- **PanelEdit:** Display drag indicators on draggable sections. [#41711](https://github.com/grafana/grafana/pull/41711), [@ashharrison90](https://github.com/ashharrison90)
- **Plugins:** Refactor Plugin Management. [#40477](https://github.com/grafana/grafana/pull/40477), [@wbrowne](https://github.com/wbrowne)
- **Prometheus:** Add custom query parameters when creating PromLink url. [#41213](https://github.com/grafana/grafana/pull/41213), [@Ian-Yy](https://github.com/Ian-Yy)
- **Prometheus:** Remove limits on metrics, labels, and values in Metrics Browser. [#40660](https://github.com/grafana/grafana/pull/40660), [@autoric](https://github.com/autoric)
- **StateTimeline:** Share cursor with rest of the panels. [#41038](https://github.com/grafana/grafana/pull/41038), [@zoltanbedi](https://github.com/zoltanbedi)
- **Tempo:** Add error details when json upload fails. [#41803](https://github.com/grafana/grafana/pull/41803), [@aocenas](https://github.com/aocenas)
- **Tempo:** Add filtering for service graph query. [#41162](https://github.com/grafana/grafana/pull/41162), [@aocenas](https://github.com/aocenas)
- **Tempo:** Add links to nodes in Service Graph pointing to Prometheus metrics. [#41135](https://github.com/grafana/grafana/pull/41135), [@aocenas](https://github.com/aocenas)
- **Time series/Bar chart panel:** Add ability to sort series via legend. [#40226](https://github.com/grafana/grafana/pull/40226), [@zoltanbedi](https://github.com/zoltanbedi)
- **TimeSeries:** Allow multiple axes for the same unit. [#41635](https://github.com/grafana/grafana/pull/41635), [@dprokop](https://github.com/dprokop)
- **TraceView:** Allow span links defined on dataFrame. [#40563](https://github.com/grafana/grafana/pull/40563), [@aocenas](https://github.com/aocenas)
- **Transformations:** Support a rows mode in labels to fields. [#41020](https://github.com/grafana/grafana/pull/41020), [@ryantxu](https://github.com/ryantxu)
- **ValueMappings:** Don't apply field config defaults to time fields. [#41132](https://github.com/grafana/grafana/pull/41132), [@torkelo](https://github.com/torkelo)
- **Variables:** Only update panels that are impacted by variable change. [#39420](https://github.com/grafana/grafana/pull/39420), [@hugohaggmark](https://github.com/hugohaggmark)
### Bug fixes
- **API:** Fix dashboard quota limit for imports. [#41495](https://github.com/grafana/grafana/pull/41495), [@yangkb09](https://github.com/yangkb09)
- **Alerting:** Fix rule editor issues with Azure Monitor data source. [#41317](https://github.com/grafana/grafana/pull/41317), [@domasx2](https://github.com/domasx2)
- **Azure monitor:** Make sure alert rule editor is not enabled when template variables are being used. [#41335](https://github.com/grafana/grafana/pull/41335), [@sunker](https://github.com/sunker)
- **CloudMonitoring:** Fix annotation queries. [#41529](https://github.com/grafana/grafana/pull/41529), [@sunker](https://github.com/sunker)
- **CodeEditor:** Trigger the latest getSuggestions() passed to CodeEditor. [#40544](https://github.com/grafana/grafana/pull/40544), [@DukeManh](https://github.com/DukeManh)
- **Dashboard:** Remove the current panel from the list of options in the Dashboard datasource. [#41826](https://github.com/grafana/grafana/pull/41826), [@ashharrison90](https://github.com/ashharrison90)
- **Encryption:** Fix decrypting secrets in alerting migration. [#41061](https://github.com/grafana/grafana/pull/41061), [@undef1nd](https://github.com/undef1nd)
- **InfluxDB:** Fix corner case where index is too large in ALIAS field. [#41562](https://github.com/grafana/grafana/pull/41562), [@gabor](https://github.com/gabor)
- **NavBar:** Order App plugins alphabetically. [#40078](https://github.com/grafana/grafana/pull/40078), [@ashharrison90](https://github.com/ashharrison90)
- **NodeGraph:** Fix zooming sensitivity on touchpads. [#40718](https://github.com/grafana/grafana/pull/40718), [@aocenas](https://github.com/aocenas)
- **Plugins:** Add OAuth pass-through logic to api/ds/query endpoint. [#41352](https://github.com/grafana/grafana/pull/41352), [@wbrowne](https://github.com/wbrowne)
- **Snapshots:** Fix panel inspector for snapshot data. [#41530](https://github.com/grafana/grafana/pull/41530), [@joshhunt](https://github.com/joshhunt)
- **Tempo:** Fix basic auth password reset on adding tag. [#41808](https://github.com/grafana/grafana/pull/41808), [@aocenas](https://github.com/aocenas)
- **ValueMapping:** Fixes issue with regex mappings. [#41515](https://github.com/grafana/grafana/pull/41515), [@mcdee](https://github.com/mcdee)
### Plugin development fixes & changes
- **grafana/ui:** Enable slider marks display. [#41275](https://github.com/grafana/grafana/pull/41275), [@dprokop](https://github.com/dprokop)
<!-- 8.2.7 START -->
# 8.2.7 (2021-12-07)
- **Security**: Fixes CVE-2021-43798. For more information, see our [blog](https://grafana.com/blog/2021/12/07/grafana-8.3.1-8.2.7-8.1.8-and-8.0.7-released-with-high-severity-security-fix/)
<!-- 8.2.7 END -->
<!-- 8.2.6 START -->
# 8.2.6 (2021-12-02)
### Features and enhancements
- **Security:** Upgrade Docker base image to Alpine 3.14.3. [#42061](https://github.com/grafana/grafana/pull/42061), [@dsotirakis](https://github.com/dsotirakis)
- **Security:** Upgrade Go to 1.17.2. [#42427](https://github.com/grafana/grafana/pull/42427), [@idafurjes](https://github.com/idafurjes)
### Bug fixes
- **TimeSeries:** Fix fillBelowTo wrongly affecting fills of unrelated series. [#41998](https://github.com/grafana/grafana/pull/41998), [@leeoniya](https://github.com/leeoniya)
<!-- 8.2.6 END -->
<!-- 8.3.0-beta1 END -->
<!-- 8.2.5 START -->
# 8.2.5 (2021-11-18)
@@ -5,6 +301,7 @@
### Bug fixes
- **Alerting:** Fix a bug where the metric in the evaluation string was not correctly populated. [#41731](https://github.com/grafana/grafana/pull/41731), [@JohnnyQQQQ](https://github.com/JohnnyQQQQ)
- **Alerting:** Fix no data behaviour in Legacy Alerting for alert rules using the AND operator. [#41305](https://github.com/grafana/grafana/pull/41305), [@gerobinson](https://github.com/gerobinson)
- **CloudMonitoring:** Ignore min and max aggregation in MQL queries. [#41302](https://github.com/grafana/grafana/pull/41302), [@sunker](https://github.com/sunker)
- **Dashboards:** 'Copy' is no longer added to new dashboard titles. [#41344](https://github.com/grafana/grafana/pull/41344), [@joshhunt](https://github.com/joshhunt)
- **DataProxy:** Fix overriding response body when response is a WebSocket upgrade. [#41364](https://github.com/grafana/grafana/pull/41364), [@marefr](https://github.com/marefr)
@@ -15,6 +312,14 @@
- **Tempo:** Fix validation of float durations. [#41400](https://github.com/grafana/grafana/pull/41400), [@ivanahuckova](https://github.com/ivanahuckova)
- **Tracing:** Correct tags for each span are shown. [#41473](https://github.com/grafana/grafana/pull/41473), [@ivanahuckova](https://github.com/ivanahuckova)
### Breaking changes
### Fix No Data behaviour in Legacy Alerting
In Grafana 8.2.5 and later, this change fixes a bug in the evaluation of alert rules when using the AND operator to compare two or more conditions. In Grafana 8.2.4 and earlier such alert rules would evaluate to `OK` if at least one, but not all, conditions returned no data. This change fixes that bug such that in Grafana 8.2.5 these alert rules now evaluate to `No Data`.
If an alert should evaluate to `OK` when one or all conditions return `No Data` then this can be done via changing `If no data or all values are null` to `OK`. However, this will not preserve the old behaviour in 8.2.4 where an alert will be `OK` if at least one, but not all, conditions return no data and then `No Data` if all conditions return `No Data`. Issue [#41305](https://github.com/grafana/grafana/issues/41305)
<!-- 8.2.5 END -->
<!-- 8.2.4 START -->
@@ -253,6 +558,14 @@ Panel queries and/or annotation queries that used more than one statistic will b
<!-- 8.2.0-beta1 END -->
<!-- 8.1.8 START -->
# 8.1.8 (2021-12-07)
- **Security**: Fixes CVE-2021-43798. For more information, see our [blog](https://grafana.com/blog/2021/12/07/grafana-8.3.1-8.2.7-8.1.8-and-8.0.7-released-with-high-severity-security-fix/)
<!-- 8.1.8 END -->
<!-- 8.1.7 START -->
# 8.1.7 (2021-10-06)
@@ -527,6 +840,14 @@ Issue [#33879](https://github.com/grafana/grafana/issues/33879)
<!-- 8.1.0-beta1 END -->
<!-- 8.0.7 START -->
# 8.0.7 (2021-12-07)
- **Security**: Fixes CVE-2021-43798. For more information, see our [blog](https://grafana.com/blog/2021/12/07/grafana-8.3.1-8.2.7-8.1.8-and-8.0.7-released-with-high-severity-security-fix/)
<!-- 8.0.7 END -->
<!-- 8.0.6 START -->
# 8.0.6 (2021-07-14)
@@ -959,6 +1280,16 @@ Issue [#33352](https://github.com/grafana/grafana/issues/33352)
<!-- 8.0.0-beta1 END -->
<!-- 7.5.13 START -->
# 7.5.13 (2022-01-18)
### Bug fixes
- **[v7.5.x] Alerting:** Fix NoDataFound for alert rules using AND operator (#41305). [#44066](https://github.com/grafana/grafana/pull/44066), [@armandgrillet](https://github.com/armandgrillet)
<!-- 7.5.13 END -->
<!-- 7.5.11 START -->
# 7.5.11 (2021-10-05)
+6 -2
View File
@@ -46,6 +46,10 @@ If you have an idea of how to improve Grafana, submit an [enhancement request](h
We want to make Grafana accessible to even more people. Submit an [accessibility issue](https://github.com/grafana/grafana/issues/new?labels=type%3A+accessibility&template=3-accessibility.md) to help us understand what we can improve.
### Write documentation
To edit or write technical content, refer to [Contribute to our documentation](/contribute/documentation/README.md). We welcome your expertise and input as our body of technical content grows.
### Triage issues
If you don't have the knowledge or time to code, consider helping with _issue triage_. The community will thank you for saving them time by spending some of yours.
@@ -76,6 +80,6 @@ Before we can accept your pull request, you need to [sign our CLA](https://grafa
## Where do I go from here?
- Set up your [development environment](contribute/developer-guide.md).
- Learn how to [contribute documentation](contribute/documentation.md).
- Learn how to [contribute documentation](contribute/README.md).
- Get started [developing plugins](https://grafana.com/docs/grafana/latest/developers/plugins/) for Grafana.
- Look through the resources in the [contribute](https://github.com/grafana/grafana/tree/main/contribute) folder.
- Look through the resources in the [contribute](contribute) folder.
+4 -5
View File
@@ -1,4 +1,4 @@
FROM node:16-alpine3.14 as js-builder
FROM node:16-alpine3.15 as js-builder
ENV NODE_OPTIONS=--max_old_space_size=8000
@@ -11,7 +11,7 @@ COPY plugins-bundled plugins-bundled
RUN yarn install
COPY tsconfig.json .eslintrc .editorconfig .browserslistrc .prettierrc.js ./
COPY tsconfig.json .eslintrc .editorconfig .browserslistrc .prettierrc.js babel.config.json ./
COPY public public
COPY tools tools
COPY scripts scripts
@@ -20,14 +20,13 @@ COPY emails emails
ENV NODE_ENV production
RUN yarn build
FROM golang:1.17.0-alpine3.14 as go-builder
FROM golang:1.17.6-alpine3.15 as go-builder
RUN apk add --no-cache gcc g++ make
WORKDIR /grafana
COPY go.mod go.sum embed.go Makefile build.go package.json ./
COPY ./local/* ./local/
COPY cue cue
COPY packages/grafana-schema packages/grafana-schema
COPY public/app/plugins public/app/plugins
@@ -40,7 +39,7 @@ RUN go mod verify
RUN make build-go
# Final stage
FROM alpine:3.14.2
FROM alpine:3.15
LABEL maintainer="Grafana team <hello@grafana.com>"
+3 -3
View File
@@ -1,4 +1,4 @@
FROM node:16-alpine3.14 as js-builder
FROM node:16-alpine3.15 as js-builder
ENV NODE_OPTIONS=--max_old_space_size=8000
@@ -12,7 +12,7 @@ COPY plugins-bundled plugins-bundled
RUN yarn install
COPY tsconfig.json .eslintrc .editorconfig .browserslistrc .prettierrc.js ./
COPY tsconfig.json .eslintrc .editorconfig .browserslistrc .prettierrc.js babel.config.json ./
COPY public public
COPY tools tools
COPY scripts scripts
@@ -21,7 +21,7 @@ COPY emails emails
ENV NODE_ENV production
RUN yarn build
FROM golang:1.17.0 AS go-builder
FROM golang:1.17.6 AS go-builder
WORKDIR /src/grafana
+1 -1
View File
@@ -79,7 +79,7 @@ The current team members are:
- Dominik Prokop ([Grafana Labs](https://grafana.com/))
- Emil Tullstedt ([Grafana Labs](https://grafana.com/))
- Erik Sundell ([Grafana Labs](https://grafana.com/))
- Fredrik Enestad ([Soundtrack Your Brand](https://www.soundtrackyourbrand.com/))
- Fredrik Enestad ([Embark Studios](https://www.embark-studios.com/))
- Hugo Häggmark ([Grafana Labs](https://grafana.com/))
- Ivana Huckova ([Grafana Labs](https://grafana.com/))
- Jeroen Op 't Eynde ([Grafana Labs](https://grafana.com/))
+1 -1
View File
@@ -21,7 +21,7 @@ grafana-mixin/
cue/
```
The following directories and their subdirectories are the original upstream licenses:
The following directories and their subdirectories are licensed under their original upstream licenses:
```
public/vendor/
+2 -9
View File
@@ -7,7 +7,7 @@ WIRE_TAGS = "oss"
-include local/Makefile
include .bingo/Variables.mk
.PHONY: all deps-go deps-js deps build-go build-server build-cli build-js build build-docker-dev build-docker-full lint-go golangci-lint test-go test-js gen-ts test run run-frontend clean devenv devenv-down protobuf drone help
.PHONY: all deps-go deps-js deps build-go build-server build-cli build-js build build-docker-full lint-go golangci-lint test-go test-js gen-ts test run run-frontend clean devenv devenv-down protobuf drone help
GO = go
GO_FILES ?= ./pkg/...
@@ -95,13 +95,6 @@ shellcheck: $(SH_FILES) ## Run checks for shell scripts.
##@ Docker
build-docker-dev: ## Build Docker image for development (fast).
@echo "build development container"
@echo "\033[92mInfo:\033[0m the frontend code is expected to be built already."
$(GO) run build.go -goos linux -pkg-arch amd64 ${OPT} build latest
cp dist/grafana-latest.linux-x64.tar.gz packaging/docker
cd packaging/docker && docker build --tag grafana/grafana:dev .
build-docker-full: ## Build Docker image for development.
@echo "build docker container"
docker build --tag grafana/grafana:dev .
@@ -158,7 +151,7 @@ gen-ts:
# you modify starlark files.
drone: $(DRONE)
$(DRONE) starlark --format
$(DRONE) lint .drone.yml
$(DRONE) lint .drone.yml --trusted
$(DRONE) --server https://drone.grafana.net sign --save grafana/grafana
help: ## Display this help.
+2 -2
View File
@@ -14,7 +14,7 @@ Grafana Labs will send you a response indicating the next steps in handling your
## Security announcements
We maintain a category on the community site called [Security Announcements](https://community.grafana.com/c/security-announcements),
We maintain a category on the community site called [Security Announcements](https://community.grafana.com/c/support/security-announcements),
where we will post a summary, remediation, and mitigation details for any patch containing security fixes.
You can also subscribe to email updates to this category if you have a grafana.com account and sign on to the community site or track updates via an [RSS feed](https://community.grafana.com/c/security-announcements.rss).
You can also subscribe to email updates to this category if you have a grafana.com account and sign on to the community site or track updates via an [RSS feed](https://community.grafana.com/c/support/security-announcements.rss).
+59
View File
@@ -0,0 +1,59 @@
{
"babelrc": false,
// Note: order is bottom-to-top and/or right-to-left
"presets": [
[
"@babel/preset-env",
{
"bugfixes": true,
"browserslistEnv": "dev",
"useBuiltIns": "entry",
"corejs": "3.10"
}
],
[
"@babel/preset-typescript",
{
"allowNamespaces": true,
"allowDeclareFields": true
}
],
[
"@babel/preset-react",
{
"runtime": "automatic"
}
]
],
"plugins": [
[
"@babel/plugin-transform-typescript",
{
"allowNamespaces": true,
"allowDeclareFields": true
}
],
["@babel/plugin-proposal-object-rest-spread", { "loose": true }],
"@babel/plugin-transform-react-constant-elements",
"@babel/plugin-proposal-nullish-coalescing-operator",
"@babel/plugin-proposal-optional-chaining",
"@babel/plugin-syntax-dynamic-import", // needed for `() => import()` in routes.ts
"angularjs-annotate",
"macros"
],
"env": {
"production": {
"presets": [
[
"@babel/preset-env",
{
"browserslistEnv": "production"
}
]
]
},
"hot": {
"plugins": ["react-refresh/babel"]
}
}
}
+41 -13
View File
@@ -208,6 +208,12 @@ rudderstack_write_key =
# Rudderstack data plane url, enabled only if rudderstack_write_key is also set
rudderstack_data_plane_url =
# Rudderstack SDK url, optional, only valid if rudderstack_write_key and rudderstack_data_plane_url is also set
rudderstack_sdk_url =
# Rudderstack Config url, optional, used by Rudderstack SDK to fetch source config
rudderstack_config_url =
# Application Insights connection string. Specify an URL string to enable this feature.
application_insights_connection_string =
@@ -228,8 +234,11 @@ admin_password = admin
# used for signing
secret_key = SW2YcwTIb9zpOOhoPsMm
# key provider used for envelope encryption, default to static value specified by secret_key
encryption_provider = secretKey
# current key provider used for envelope encryption, default to static value specified by secret_key
encryption_provider = secretKey.v1
# list of configured key providers, space separated (Enterprise only): e.g., awskms.v1 azurekv.v1
available_encryption_providers =
# disable gravatar profile images
disable_gravatar = false
@@ -250,7 +259,6 @@ cookie_samesite = lax
allow_embedding = false
# Set to true if you want to enable http strict transport security (HSTS) response header.
# This is only sent when HTTPS is enabled in this configuration.
# HSTS tells browsers that the site should only be accessed using HTTPS.
strict_transport_security = false
@@ -285,8 +293,8 @@ content_security_policy_template = """script-src 'self' 'unsafe-eval' 'unsafe-in
[snapshots]
# snapshot sharing options
external_enabled = true
external_snapshot_url = https://snapshots-origin.raintank.io
external_snapshot_name = Publish to snapshot.raintank.io
external_snapshot_url = https://snapshots.raintank.io
external_snapshot_name = Publish to snapshots.raintank.io
# Set to true to enable this Grafana instance act as an external snapshot server and allow unauthenticated requests for
# creating and deleting snapshots.
@@ -555,6 +563,7 @@ jwk_set_file =
cache_ttl = 60m
expected_claims = {}
key_file =
auto_sign_up = false
#################################### Auth LDAP ###########################
[auth.ldap]
@@ -735,8 +744,8 @@ global_alert_rule = -1
#################################### Unified Alerting ####################
[unified_alerting]
# Enable the Unified Alerting sub-system and interface. When enabled we'll migrate all of your alert rules and notification channels to the new system. New alert rules will be created and your notification channels will be converted into an Alertmanager configuration. Previous data is preserved to enable backwards compatibility but new data is removed.
enabled = false
# Enable the Unified Alerting sub-system and interface. When enabled we'll migrate all of your alert rules and notification channels to the new system. New alert rules will be created and your notification channels will be converted into an Alertmanager configuration. Previous data is preserved to enable backwards compatibility but new data is removed when switching. When this configuration section and flag are not defined, the state is defined at runtime. See the documentation for more details.
enabled =
# Comma-separated list of organization IDs for which to disable unified alerting. Only supported if unified alerting is enabled.
disabled_orgs =
@@ -790,8 +799,8 @@ min_interval = 10s
#################################### Alerting ############################
[alerting]
# Disable legacy alerting engine & UI features
enabled = true
# Enable the legacy alerting sub-system and interface. If Unified Alerting is already enabled and you try to go back to legacy alerting, all data that is part of Unified Alerting will be deleted. When this configuration section and flag are not defined, the state is defined at runtime. See the documentation for more details.
enabled =
# Makes it possible to turn off alert execution but alerting UI is visible
execute_alerts = true
@@ -856,6 +865,11 @@ max_annotations_to_keep =
# Enable the Explore section
enabled = true
#################################### Query History #############################
[query_history]
# Enable the Query history
enabled = false
#################################### Internal Grafana Metrics ############
# Metrics available at HTTP API Url /metrics
[metrics]
@@ -911,6 +925,10 @@ zipkin_propagation = false
# Not disabling is the most common setting when using Zipkin elsewhere in your infrastructure.
disable_shared_zipkin_spans = false
[tracing.opentelemetry.jaeger]
# jaeger destination (ex http://localhost:14268/api/traces)
address =
#################################### External Image Storage ##############
[external_image_storage]
# Used for uploading images to public servers so they can be included in slack/email messages.
@@ -968,7 +986,7 @@ enable_alpha = false
app_tls_skip_verify_insecure = false
# Enter a comma-separated list of plugin identifiers to identify plugins to load even if they are unsigned. Plugins with modified signatures are never loaded.
allow_loading_unsigned_plugins =
# Enable or disable installing plugins directly from within Grafana.
# Enable or disable installing / uninstalling / updating plugins directly from within Grafana.
plugin_admin_enabled = true
plugin_admin_external_manage_enabled = false
plugin_catalog_url = https://grafana.com/grafana/plugins/
@@ -1040,12 +1058,14 @@ rendering_chrome_bin =
# Mode 'reusable' will have one browser instance and will create a new incognito page on each request.
rendering_mode =
# When rendering_mode = clustered you can instruct how many browsers or incognito pages can execute concurrently. Default is 'browser'
# When rendering_mode = clustered, you can instruct how many browsers or incognito pages can execute concurrently. Default is 'browser'
# and will cluster using browser instances.
# Mode 'context' will cluster using incognito pages.
rendering_clustering_mode =
# When rendering_mode = clustered you can define maximum number of browser instances/incognito pages that can execute concurrently..
# When rendering_mode = clustered, you can define the maximum number of browser instances/incognito pages that can execute concurrently. Default is '5'.
rendering_clustering_max_concurrency =
# When rendering_mode = clustered, you can specify the duration a rendering request can take before it will time out. Default is `30` seconds.
rendering_clustering_timeout =
# Limit the maximum viewport width, height and device scale factor that can be requested.
rendering_viewport_max_width =
@@ -1061,9 +1081,17 @@ grpc_port =
license_path =
[feature_toggles]
# enable features, separated by spaces
# there are currently two ways to enable feature toggles in the `grafana.ini`.
# you can either pass an array of feature you want to enable to the `enable` field or
# configure each toggle by setting the name of the toggle to true/false. Toggles set to true/false
# will take precedence over toggles in the `enable` list.
# enable = feature1,feature2
enable =
# feature1 = true
# feature2 = false
[date_formats]
# For information on what formatting patterns that are supported https://momentjs.com/docs/#/displaying/
+45 -12
View File
@@ -208,6 +208,18 @@
# Google Tag Manager ID, only enabled if you specify an id here
;google_tag_manager_id =
# Rudderstack write key, enabled only if rudderstack_data_plane_url is also set
;rudderstack_write_key =
# Rudderstack data plane url, enabled only if rudderstack_write_key is also set
;rudderstack_data_plane_url =
# Rudderstack SDK url, optional, only valid if rudderstack_write_key and rudderstack_data_plane_url is also set
;rudderstack_sdk_url =
# Rudderstack Config url, optional, used by Rudderstack SDK to fetch source config
;rudderstack_config_url =
#################################### Security ####################################
[security]
# disable creation of admin user on first start of grafana
@@ -222,8 +234,11 @@
# used for signing
;secret_key = SW2YcwTIb9zpOOhoPsMm
# key provider used for envelope encryption, default to static value specified by secret_key
;encryption_provider = secretKey
# current key provider used for envelope encryption, default to static value specified by secret_key
;encryption_provider = secretKey.v1
# list of configured key providers, space separated (Enterprise only): e.g., awskms.v1 azurekv.v1
;available_encryption_providers =
# disable gravatar profile images
;disable_gravatar = false
@@ -244,7 +259,6 @@
;allow_embedding = false
# Set to true if you want to enable http strict transport security (HSTS) response header.
# This is only sent when HTTPS is enabled in this configuration.
# HSTS tells browsers that the site should only be accessed using HTTPS.
;strict_transport_security = false
@@ -279,8 +293,8 @@
[snapshots]
# snapshot sharing options
;external_enabled = true
;external_snapshot_url = https://snapshots-origin.raintank.io
;external_snapshot_name = Publish to snapshot.raintank.io
;external_snapshot_url = https://snapshots.raintank.io
;external_snapshot_name = Publish to snapshots.raintank.io
# Set to true to enable this Grafana instance act as an external snapshot server and allow unauthenticated requests for
# creating and deleting snapshots.
@@ -533,6 +547,7 @@
;cache_ttl = 60m
;expected_claims = {"aud": ["foo", "bar"]}
;key_file = /path/to/key/file
;auto_sign_up = false
#################################### Auth LDAP ##########################
[auth.ldap]
@@ -713,7 +728,7 @@
#################################### Unified Alerting ####################
[unified_alerting]
#Enable the Unified Alerting sub-system and interface. When enabled we'll migrate all of your alert rules and notification channels to the new system. New alert rules will be created and your notification channels will be converted into an Alertmanager configuration. Previous data is preserved to enable backwards compatibility but new data is removed.```
;enabled = false
;enabled = true
# Comma-separated list of organization IDs for which to disable unified alerting. Only supported if unified alerting is enabled.
;disabled_orgs =
@@ -768,7 +783,7 @@
#################################### Alerting ############################
[alerting]
# Disable legacy alerting engine & UI features
;enabled = true
;enabled = false
# Makes it possible to turn off alert execution but alerting UI is visible
;execute_alerts = true
@@ -833,6 +848,11 @@
# Enable the Explore section
;enabled = true
#################################### Query History #############################
[query_history]
# Enable the Query history
;enabled = false
#################################### Internal Grafana Metrics ##########################
# Metrics available at HTTP API Url /metrics
[metrics]
@@ -888,6 +908,10 @@
# Not disabling is the most common setting when using Zipkin elsewhere in your infrastructure.
;disable_shared_zipkin_spans = false
[tracing.opentelemetry.jaeger]
# jaeger destination (ex http://localhost:14268/api/traces)
; address = http://localhost:14268/api/traces
#################################### External image storage ##########################
[external_image_storage]
# Used for uploading images to public servers so they can be included in slack/email messages.
@@ -941,7 +965,7 @@
;app_tls_skip_verify_insecure = false
# Enter a comma-separated list of plugin identifiers to identify plugins to load even if they are unsigned. Plugins with modified signatures are never loaded.
;allow_loading_unsigned_plugins =
# Enable or disable installing plugins directly from within Grafana.
# Enable or disable installing / uninstalling / updating plugins directly from within Grafana.
;plugin_admin_enabled = false
;plugin_admin_external_manage_enabled = false
;plugin_catalog_url = https://grafana.com/grafana/plugins/
@@ -1012,12 +1036,14 @@
# Mode 'reusable' will have one browser instance and will create a new incognito page on each request.
;rendering_mode =
# When rendering_mode = clustered you can instruct how many browsers or incognito pages can execute concurrently. Default is 'browser'
# When rendering_mode = clustered, you can instruct how many browsers or incognito pages can execute concurrently. Default is 'browser'
# and will cluster using browser instances.
# Mode 'context' will cluster using incognito pages.
;rendering_clustering_mode =
# When rendering_mode = clustered you can define maximum number of browser instances/incognito pages that can execute concurrently..
# When rendering_mode = clustered, you can define the maximum number of browser instances/incognito pages that can execute concurrently. Default is '5'.
;rendering_clustering_max_concurrency =
# When rendering_mode = clustered, you can specify the duration a rendering request can take before it will time out. Default is `30` seconds.
;rendering_clustering_timeout =
# Limit the maximum viewport width, height and device scale factor that can be requested.
;rendering_viewport_max_width =
@@ -1034,8 +1060,15 @@
;license_path =
[feature_toggles]
# enable features, separated by spaces
;enable =
# there are currently two ways to enable feature toggles in the `grafana.ini`.
# you can either pass an array of feature you want to enable to the `enable` field or
# configure each toggle by setting the name of the toggle to true/false. Toggles set to true/false
# will take presidence over toggles in the `enable` list.
;enable = feature1,feature2
;feature1 = true
;feature2 = false
[date_formats]
# For information on what formatting patterns that are supported https://momentjs.com/docs/#/displaying/
+1 -1
View File
@@ -3,7 +3,7 @@
This directory contains guides for contributors to the Grafana project.
- [Create a pull request](create-pull-request.md)
- [Contributing documentation](documentation.md)
- [Contribute documentation](../contribute/documentation/README.md)
- [Developer guide](developer-guide.md)
- [Triage issues](triage-issues.md)
- [Merge a pull request](merge-pull-request.md)
@@ -109,7 +109,7 @@ ctx := req.Request.Context()
query := &models.FindDashboardQuery{
ID: "foo",
}
if err := bus.DispatchCtx(ctx, query); err != nil {
if err := bus.Dispatch(ctx, query); err != nil {
return err
}
// The query now contains a result.
+25 -6
View File
@@ -39,6 +39,14 @@ For alternative ways of cloning the Grafana repository, please refer to [GitHub'
**Warning:** Do not use `go get` to download Grafana. Recent versions of Go have added behavior which isn't compatible with the way the Grafana repository is structured.
### Configure Editors
For some IDEs, additional configuration may be needed for Typescript to work with [Yarn plug'n'play](https://yarnpkg.com/features/pnp).
For [VSCode](https://yarnpkg.com/getting-started/editor-sdks#vscode) and [Vim](https://yarnpkg.com/getting-started/editor-sdks#vim),
it's as easy as running `yarn dlx @yarnpkg/sdks vscode` or `yarn dlx @yarnpkg/sdks vim`, respectively.
More information can be found [here](https://yarnpkg.com/getting-started/editor-sdks).
## Build Grafana
Grafana consists of two components; the _frontend_, and the _backend_.
@@ -81,7 +89,23 @@ When you log in for the first time, Grafana asks you to change your password.
The Grafana backend includes SQLite which requires GCC to compile. So in order to compile Grafana on Windows you need to install GCC. We recommend [TDM-GCC](http://tdm-gcc.tdragon.net/download). Eventually, if you use [Scoop](https://scoop.sh), you can install GCC through that.
You can simply build the back-end as follows: `go run build.go build`. The Grafana binaries will be in bin\\windows-amd64.
You can build the back-end as follows:
1. Follow the [instructions](https://github.com/google/wire#installing) to install the Wire tool.
2. Generate code using Wire:
```
# Normally Wire tool installed at $GOPATH/bin/wire.exe
<Wire tool install path> gen -tags oss ./pkg/server ./pkg/cmd/grafana-cli/runner
```
3. Build the Grafana binaries:
```
go run build.go build
```
The Grafana binaries will be in bin\\windows-amd64.
Alternately, if you wish to use the `make` command, install [Make for Windows](http://gnuwin32.sourceforge.net/packages/make.htm) and use it in a Unix shell (f.ex. Git Bash).
## Test Grafana
@@ -188,11 +212,6 @@ make build-docker-full
The resulting image will be tagged as grafana/grafana:dev.
> **Note:** If you've already set up a local development environment, and you're running a `linux/amd64` machine, you can speed up building the Docker image:
1. Build the frontend: `go run build.go build-frontend`.
1. Build the Docker image: `make build-docker-dev`.
**Note:** If you are using Docker for macOS, be sure to set the memory limit to be larger than 2 GiB. Otherwise, `grunt build` may fail. The memory limit settings are available under **Docker Desktop** -> **Preferences** -> **Advanced**.
## Troubleshooting
-42
View File
@@ -1,42 +0,0 @@
# Contributing to documentation
This documents guides you through the process of contributing to the Grafana documentation. Make sure you've read the guide for [Contributing to Grafana](/CONTRIBUTING.md).
## Your first contribution
If youre unsure about where to start, check out some of our [open docs issues](https://github.com/grafana/grafana/issues?q=is%3Aopen+is%3Aissue+label%3Atype%2Fdocs).
Sometimes it can be difficult to understand an issue when you're just getting started. Refer to this list of [beginner-friendly issues](https://github.com/grafana/grafana/issues?q=is%3Aopen+is%3Aissue+label%3Atype%2Fdocs+label%3A"beginner+friendly") for tasks suitable for first-time contributors.
When youve found an issue you want to work on, please comment on the issue to let other people know you intend to work on it.
If you encounter any misspellings or violations to the style guide, please let us know by submitting an issue (or just fix them if they are minor changes).
On every page in the [documentation](https://grafana.com/docs/) are two links in the upper right corner:
- **Edit this page** takes you directly to the file on GitHub where you can contribute a fix.
- **Request doc changes** prepares an issue on GitHub with relevant information already filled in.
## Join our community
For general discussions on documentation, youre welcome to join the `#docs` channel on our [public Grafana Slack](http://slack.raintank.io) team.
## Style and formatting
All Grafana documentation is written using [Markdown](https://en.wikipedia.org/wiki/Markdown), and can be found in the [docs](/docs) directory in the [Grafana GitHub repository](https://github.com/grafana/grafana). The [documentation website](https://grafana.com/docs) is generated with [Hugo](https://gohugo.io) which uses [Blackfriday](https://github.com/russross/blackfriday) as its Markdown rendering engine.
### Documentation structure
The Grafana documentation is organized into topics, called _sections_. You can take a look at the current build at [grafana.com/docs/](https://grafana.com/docs/).
Each top-level section is located under the [docs/sources](/docs/sources) directory. Subsections are added by creating a subdirectory in the directory of the parent section.
For each section, an `_index.md` file provides an overview of the topic.
### Style guide
Refer to the [Documentation style guide](style-guides/documentation-style-guide.md) for information about Grafana style, word choice, and grammar conventions.
### Spelling
The [codespell](https://github.com/codespell-project/codespell) tool is run for every change to catch common misspellings.
+235
View File
@@ -0,0 +1,235 @@
# Contribute to our documentation
We provide these guidelines to help our contributors make additions or corrections to our documentation.
## Welcome
Welcome. We're glad you're here to help make our technical documentation even better. We develop content that leads our users to success using Grafana products. Technical accuracy is our primary consideration, and we value the use of inclusive language. We regard your feedback as a gift - thanks for reading through these guidelines.
### Intended audience
We write these guidelines for contributors who are interested in improving our technical content.
## Understanding the structure of Grafana documentation
All Grafana Enterprise and OSS documentation is located in the [Grafana open source project](https://github.com/grafana/grafana) GitHub repository: https://github.com/grafana/grafana/tree/main/docs/sources.
- The **sources** directory organizes content by topic areas, for example **administration** and **alerting**.
- Topic directories include an `_index.md` file, which provides an overview of the topic, and optionally includes subtopics that provide more detail.
> The `_index.md` file is required.
### Writing in markdown
We write technical documentation using [Markdown](https://en.wikipedia.org/wiki/Markdown). We've put together a short guide to help you how to structure and format your content.
To access the markdown guide, refer to [Markdown style guide](documentation-markdown-guide.md).
## Ways to contribute
We're thrilled that you are considering contributing to the documentation. You can contribute content in the following ways:
- [Request a change](#request-a-change)
- [Edit a topic](#edit-a-topic)
- [Write a topic](#write-a-topic)
### Request a change
Request a change when you want to make a suggestion about a topic, but don't want to provide an edit that generates a pull request. Requesting a change gives you the freedom to express your ideas without committing language. Your suggestion can reflect a small change to wording or can reflect larger, more substantive changes.
GitHub captures your request as an **Issue** logged against the repository.
Before you begin:
- Create a GitHub account.
To request a change, complete the following steps:
1. While viewing the topic, click **Request a change**.
The Issue title auto-populates with the location of the file about which you are requesting a change.
![Request a change](request-change.png)
2. Enter a change request description.
3. Add the **type/docs** label.
4. Click **Submit new issue**.
### Edit a topic
If you want to recommend a small change, such as suggesting a correction to a topic, you can edit the topic directly in GitHub. You are not required to fork and clone the repo to use this approach.
Other small changes might include:
- Adding steps to a task
- Adding clarifying language to a concept
- Providing an example
Before you begin:
- Create a GitHub account.
To edit a topic, complete the following steps:
1. While viewing the topic you want to edit, click **Edit this page**.
![Edit a topic](edit-file.png)
2. Add your changes to the topic.
3. Scroll to the bottom of the page and enter a branch name.
For example, enter `clarified dashboard panel definition`.
4. Click **Commit**.
GitHub prompts you to create a PR.
5. Complete the prompts provided in the body of the PR.
6. Click **Create pull request**.
### Write a topic
At Grafana Labs, we use the principles of topic-based authoring when we write technical documentation. Topic-based authoring provides guidelines for writing three _types_ of technical documentation: concept, task, and reference. Before you begin writing, establish the topic type you want to write.
#### Understanding topic types
Technical content is divided into three topic types: concept, task, and reference.
- **Concept**: A concept topic explains _what_ a feature (or idea) is, and why it is important.
- **Task**: A task topic explains _how_ to complete an end user procedure in the system. Task topics contain steps.
- **Reference** A reference topic contains lookup information that a user might consult when they complete a task. Documenting a list of values with descriptions is a common form of reference topic.
**Example**
Suppose you are writing content for a site called _Doggie handbook_. You might organize your topics like this:
**Concepts**
- What a dog is
- Brief history of dogs
- Why you might want a dog
- Tasks dogs can be trained to do
**Tasks**
- Feed the dog
- Groom the dog
- Train the dog
**References**
- List of dog equipment you will need
- Table of breeds that includes breed name, size range, short or long hair, and type of dog
#### Prepare your environment
Before you begin writing, we recommend that you fork and clone the Grafana repository so that you can use a text editor locally to create branches, commit your changes, and create a PR.
While this document doesn't include git commands or descriptions of Github operations, you might find these links useful.
- [Install git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git): We store all source code, including documentation, in Git repositories.
- [Fork a repo](https://docs.github.com/en/get-started/quickstart/fork-a-repo): Locate the repo you want to clone, and fork it.
- [Clone a repo](https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository): Clone the repository to your local machine.
- [Create a branch](https://git-scm.com/book/en/v2/Git-Branching-Basic-Branching-and-Merging): Before you make change, create a branch. Do not push changes against the `main` branch.
- [Create a PR](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request): After you add, commit, and push your changes, create a PR in Github.
#### Use a documentation template to contribute a topic
We have provided documentation templates that align with each topic type:
- [Concept](templates/doc-concept-template.md)
- [Task](templates/doc-task-template.md)
- [Reference](templates/doc-reference-template.md)
Each template provides additional usage and formatting guidelines. We recommend that you make a copy of whichever template you are using, then add content.
> Remove any unused content before you commit your changes.
#### View a local build
Prior to pushing your changes, you can view a local build of the documentation so that you can review your work.
To view a local build:
1. Install [Docker](https://www.docker.com/products/docker-desktop).
1. Run Docker.
1. Navigate to the **docs** root directory.
1. Run `make build`.
1. Open `localhost:3002` to review your changes.
## Push changes and create a PR
When you are ready for other people to review your work, perform the following tasks.
1. [Add](https://git-scm.com/docs/git-add) your changes, which prepares your content for the next commit.
1. [Commit](https://git-scm.com/docs/git-commit) your changes.
1. [Push](https://git-scm.com/docs/git-push) your changes to Github.
1. [Create a PR](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request) in Github.
The docs build system automatically conducts a series of tests to ensure that the content doesn't conflict with other content in the docs repository.
### Understanding the PR review and approval workflow
When a PR is added to the repo with a label associated with `docs`, it will be reviewed by a member of the technical writing team. Depending on the size of the PR and the priority of other work, the PR will either be immediately reviewed and merged (minor fixes typically follow this pattern) or the PR will be triaged and placed in the backlog of work or moved into further development.
## Join our community
For general discussions on documentation, youre welcome to join the `#docs` channel on our [public Grafana Slack](http://slack.raintank.io) team.
## Reference: Top five writing tips
While we don't provide a comprehensive style guide in this document, here's a few writing tips to help the writing process.
### Consider the audience
Write for an audience that is computer literate and has general technical knowledge, but is not necessarily familiar with Grafana or the finer points of observability.
Pretend you are explaining your topic to a brand new Grafana user or developer.
### Write clear and concise sentences and paragraphs
Use the following sentence structure when you write: _subject_—_verb_—_object_. If you are telling a user to do something, write an imperative sentence. For example “Enter the refresh rate time interval and click Save.”
- You can also start a sentence with an _if_ clause, which positions the condition before the action.
- Limit the number of words in a sentence to 20..
### Use active voice
Active voice makes the performer of the action the subject
of the sentence. When you write in passive voice, the recipient of the action (and not the performer) becomes the subject of the sentence.
Active-voice sentences are more direct and clearly identify _who_ is doing _what_. Not all tasks are completed by a user; sometimes the system can also be a performer (and by extension, the subject of the sentence). When you write in active voice you clearly make that distinction, which results in more engaging and less wordy content.
| Use (active) | Avoid (passive) |
| ----------------------------------------------------- | -------------------------------------------------------------------- | --- |
| After you upgrade the software, restart the computer. | After the software has been upgraded, the computer can be restarted. |
| Click **OK** to save the dashboard. | The dashboard is saved when the **OK** button is clicked. |
| Create a dashboard. | A dashboard is created by you. | . |
### Avoid obscure non-English words and abbreviations
Users might be unfamiliar with some non-English words and abbreviations such as _per_, _vs_, and _via_. Latin abbreviations in particular, like _i.e._, _e.g._, and _etc._, are vague.
| Use | Dont use |
| ------------ | ----------- |
| through | via |
| that is | i.e. |
| according to | per, as per |
| and so on | etc. |
### Write self-contained topics
Thanks to search engines, every page in the documentation might be a reader's entry point. This means that each page needs to be self-contained and make sense on its own. The reader should not need to read other topics in order to perform the task or understand the concept.
However, try to be helpful and link to related information. Using the _Doggie handbook_ example, the concept topic that explains what dogs can be trained to do might link to the Train the dog task.
Binary file not shown.

After

Width:  |  Height:  |  Size: 182 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 179 KiB

+20 -3
View File
@@ -21,9 +21,13 @@ The following checklist/summary should give you a quick overview of what to ask/
Before actually merging a pull request there's a couple of things to take into consideration.
### Status checks
Before you can merge a pull request, it must have a review approval, and all the required status checks must pass.
### Format the pull request title
Make sure that the pull request title is properly formatted according to `<Area>: <Summary>` and try to make the summary short and understandable for the community as a whole.
The pull request title should be formatted according to `<Area>: <Summary>`. Keep the summary short and understandable for the community as a whole.
All commits in a pull request are squashed when merged and the pull request title will be the default subject line of the squashed commit message. It's also used for [changelog/release notes](#include-in-changelog-and-release-notes).
@@ -31,9 +35,9 @@ See [formatting guidelines](create-pull-request.md#formatting-guidelines) for mo
### Assign a milestone
It's recommended to add a milestone to every pull request. This makes it easier to track what changes did go into a certain release. Without this you're basically left with going through git commits which could be a lot harder.
A milestone **should** be added to every pull request. Several things in the Grafana release process requires at least pull requests to be in a milestone, for example [generating changelog/release notes](#include-in-changelog-and-release-notes).
There's also various tooling built that in some cases requires a pull request to be assigned a milestone, for example [generating changelog/release notes](#include-in-changelog-and-release-notes).
This makes it easier to track what changes go into a certain release. Without this information, release managers have to go through git commits which is not an efficient process.
### Include in changelog and release notes?
@@ -81,8 +85,21 @@ In case the pull request introduces a breaking change you should document this.
### Should the pull request be backported?
An active decision of backporting needs to be taken for every pull request. There's a pull request check named **Backport Check** that will enforce this. By adding/removing labels on the pull request the check will be re-evaluated.
#### No backport
If you don't want to backport you need to add a label named **no-backport** to the pull request.
#### Backport
If your pull request has changes that need to go into one or several existing release branches you need to backport the changes. Please refer to [Backport PR](.github/bot.md#backport-pr) for detailed instructions.
The general rule of thumb regarding what changes goes into what release is:
- bug fixes should be released in patch releases, e.g. v8.1.3, if the bug was introduced in the same major/minor or lower patch version.
- new features should go into the next major/minor version, e.g. v8.0.0, v8.2.0.
Some examples when backport is required:
- The change needs to be released in the next upcoming patch release, e.g. v8.1.3, so you have to backport it, e.g. into the v8.1.x release branch.
@@ -119,7 +119,7 @@ If that is the case, then use the following format for headings:
- Assume all graphics will be exclusively viewed on the web.
- Maximum image size is 3840px X 2160px.
- Screenshots should be readable, but not too large.
- _Do not_ use image shortcodes. Follow the guidance in the [Grafana markdown guide](https://github.com/grafana/grafana/blob/main/contribute/style-guides/documentation-markdown-guide.md#images).
- _Do not_ use image shortcodes. Follow the guidance in [Markdown style guide](../documentation/documentation-markdown-guide.md#Images).
- Markdown image links are preferred. Only use the HTML image links if you need to style the image in ways unsupported in Markdown.
- When you name a file, follow the [file naming conventions](#file-naming-conventions). Example: image-name-7-3.png
+2 -2
View File
@@ -16,8 +16,8 @@ BASE_URL=http://172.0.10.2:3333 yarn e2e
The above commands use some utils scripts under [_\<repo-root>/e2e_](../../e2e) that can also be used for more control.
- `./e2e/start-server` This creates a fresh new grafana server working dir, setup's config and starts the server. It will also kill any previously started server that is still running using pid file at _\<repo-root>/e2e/tmp/pid_.
- `./e2e/wait-for-grafana` waits for `$HOST` and `$PORT` to be available. Per default localhost and 3001.
- `./scripts/grafana-server/start-server` This creates a fresh new grafana server working dir, setup's config and starts the server. It will also kill any previously started server that is still running using pid file at _\<repo-root>/scripts/grafana-server/tmp/pid_.
- `./scripts/grafana-server/wait-for-grafana` waits for `$HOST` and `$PORT` to be available. Per default localhost and 3001.
- `./e2e/run-suite <debug|dev|noarg>` Starts cypress in different modes.
## Test suites
+1
View File
@@ -255,6 +255,7 @@ Organize your code in a directory that encloses feature code:
- Put React components in `components` directory (i.e. `features/my-feature/components/ButtonPeopleDreamOf.tsx`).
- Put test files next to the test subject.
- Put containers (pages) in feature root (i.e. `features/my-feature/DashboardPage.tsx`).
- Put API function calls that isn't a redux thunk in an `api.ts` file within the same directory.
- Subcomponents can live in the component folders. Small component do not need their own folder.
- Component SASS styles should live in the same folder as component code.
-60
View File
@@ -1,60 +0,0 @@
# Templates
Templates are both a starting point and an instruction manual for writing something new. They are intended to make life easier by providing a jumping-off point, something besides a blank page to start from. They are not intended to be a limitation. If the template does not work perfectly for your use case, you can adjust or change it. We will work it out in code review.
## Create a template
Feel free to add templates to the `templates` folder. Try to make them as generic as possible and include clear instructions for when and how to use the template. Assume that the template user is a brand new contributor and write accordingly.
## Use a template
1. Read the template. Make sure you understand what it is for and how it is intended to be used.
1. Copy and rename the template. Move it to where you actually need it.
You might also want to copy the content of the template and paste it into a different file. This is acceptable use.
1. Replace the template content with your own. Delete whatever is unnecessary.
## Documentation templates
In an ideal world, each topic will correspond to an information _type_ ([task](doc-task-template.md), [reference](doc-reference-template.md), [concept](doc-concept-template.md)) and contain only that type of information.
However, this is not always practical. For example, you have a series of short topics, you can group them into one topic.
Try to _chunk_ your content. This means you should organize the document so that the same kinds of content are grouped together.
### Chunking example
If I was writing content for a site called _Doggie handbook_, I might organize it like this.
**Concept**
- What a dog is
- Brief history of dogs
- Why you might want a dog
- Tasks dogs can be trained to do
**Tasks**
- Feed the dog
- Groom the dog
- Train the dog
**Reference**
- List of dog equipment you will need
- Table of breeds that includes breed name, size range, short or long hair, and type of dog
### Audience
Write for an audience that is computer literate and has general technical knowledge, but is not necessarily familiar with Grafana or the finer points of observability.
Pretend you are explaining your topic to a brand new Grafana user or developer.
### Self-contained
Thanks to search engines, every page in the documentation might be a reader's entry point. This means that each page needs to be self-contained and make sense on its own. The reader should not need to read other topics in order to perform the task or understand the concept.
However, try to be helpful and link to related information. Using the _Doggie handbook_ example, the concept topic that explains what dogs can be trained to do might link to the Train the dog task.
## Code templates
This is a placeholder for future templates.
+16
View File
@@ -34,11 +34,15 @@ datasources:
type: prometheus
access: proxy
url: http://localhost:9090
jsonData:
manageAlerts: false
- name: gdev-slow-prometheus
type: prometheus
access: proxy
url: http://localhost:3011
jsonData:
manageAlerts: false
- name: gdev-testdata
isDefault: true
@@ -251,6 +255,17 @@ datasources:
secureJsonData:
password: Password!
- name: gdev-mssql-tls
type: mssql
url: localhost:1434
database: grafana
user: grafana
jsonData:
encrypt: "true"
tlsSkipVerify: true
secureJsonData:
password: Password!
- name: gdev-mssql-ds-tests
type: mssql
url: localhost:1433
@@ -293,6 +308,7 @@ datasources:
url: http://localhost:3100
editable: false
jsonData:
manageAlerts: false
derivedFields:
- name: "traceID"
matcherRegex: "traceID=(\\w+)"
+13 -2
View File
@@ -42,7 +42,7 @@ datasources:
version: Flux
organization: myorg
defaultBucket: mybucket
- name: gdev-influxdb-influxql
type: influxdb
access: proxy
@@ -220,6 +220,17 @@ datasources:
secureJsonData:
password: Password!
- name: gdev-mssql-tls
type: mssql
url: localhost:1434
database: grafana
user: grafana
jsonData:
encrypt: "true"
tlsSkipVerify: true
secureJsonData:
password: Password!
- name: gdev-mssql-ds-tests
type: mssql
url: mssqltests:1433
@@ -259,4 +270,4 @@ datasources:
type: loki
access: proxy
url: http://loki:3100
editable: false
editable: false
@@ -815,19 +815,19 @@
"value": "Wm2"
},
{
"text": "Volt-ampere (VA)",
"text": "Volt-Ampere (VA)",
"value": "voltamp"
},
{
"text": "Kilovolt-ampere (kVA)",
"text": "Kilovolt-Ampere (kVA)",
"value": "kvoltamp"
},
{
"text": "Volt-ampere reactive (var)",
"text": "Volt-Ampere reactive (VAr)",
"value": "voltampreact"
},
{
"text": "Kilovolt-ampere reactive (kvar)",
"text": "Kilovolt-Ampere reactive (kVAr)",
"value": "kvoltampreact"
},
{
+9 -5
View File
@@ -161,7 +161,8 @@
"rowHeight": 0.99,
"showValue": "auto",
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -545,7 +546,8 @@
"values": false
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -792,7 +794,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -861,7 +864,8 @@
"stacking": "none",
"text": {},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -890,7 +894,7 @@
}
],
"refresh": "",
"schemaVersion": 30,
"schemaVersion": 33,
"style": "dark",
"tags": [
"gdev",
File diff suppressed because it is too large Load Diff
@@ -217,7 +217,7 @@
}
}
],
"schemaVersion": 30,
"schemaVersion": 33,
"style": "dark",
"tags": [],
"templating": {
@@ -1991,7 +1991,7 @@
"axisLabel": "",
"axisPlacement": "auto",
"drawStyle": "line",
"fillOpacity": 29,
"fillOpacity": 0,
"gradientMode": {
"label": "None",
"value": "none"
@@ -2054,6 +2054,18 @@
"value": 0
}
]
},
{
"matcher": {
"id": "byName",
"options": "value"
},
"properties": [
{
"id": "custom.fillOpacity",
"value": 0
}
]
}
]
},
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,486 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"editable": true,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"iteration": 1640181282174,
"links": [],
"liveNow": false,
"panels": [
{
"datasource": {
"type": "testdata"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 0
},
"id": 44,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"title": "Orphan non-repeating panel",
"type": "timeseries"
},
{
"collapsed": false,
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 8
},
"id": 2,
"panels": [],
"repeat": "row",
"title": "Row title $row",
"type": "row"
},
{
"datasource": {
"type": "testdata"
},
"description": "",
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 8,
"x": 0,
"y": 9
},
"id": 9,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"repeat": "horizontal",
"repeatDirection": "h",
"title": "Horizontal repeating $horizontal",
"type": "timeseries"
},
{
"datasource": {
"type": "testdata"
},
"description": "",
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 8,
"x": 0,
"y": 17
},
"id": 4,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"title": "Non-repeating panel",
"type": "timeseries"
},
{
"datasource": {
"type": "testdata"
},
"description": "",
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 8,
"x": 8,
"y": 17
},
"id": 22,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"repeat": "vertical",
"repeatDirection": "v",
"title": "Vertical repeating $vertical",
"type": "timeseries"
}
],
"schemaVersion": 34,
"style": "dark",
"tags": [],
"templating": {
"list": [
{
"current": {
"selected": true,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "vertical",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
},
{
"current": {
"selected": true,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "horizontal",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
},
{
"current": {
"selected": true,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "row",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
}
]
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {},
"timezone": "utc",
"title": "Repeating Kitchen Sink",
"uid": "hxQwTjpnk",
"version": 6,
"weekStart": ""
}
@@ -0,0 +1,204 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"editable": true,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"iteration": 1640181116069,
"links": [],
"liveNow": false,
"panels": [
{
"datasource": {
"type": "testdata"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 8,
"x": 0,
"y": 0
},
"id": 2,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"repeat": "horizontal",
"repeatDirection": "h",
"title": "Panel Title $horizontal",
"type": "timeseries"
}
],
"schemaVersion": 34,
"style": "dark",
"tags": [],
"templating": {
"list": [
{
"current": {
"selected": false,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "vertical",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
},
{
"current": {
"selected": true,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "horizontal",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
}
]
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {},
"timezone": "utc",
"title": "Repeating a panel horizontally",
"uid": "WVpf2jp7z",
"version": 3,
"weekStart": ""
}
@@ -0,0 +1,202 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"editable": true,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"links": [],
"liveNow": false,
"panels": [
{
"datasource": {
"type": "testdata"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 0
},
"id": 2,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"repeat": "vertical",
"repeatDirection": "v",
"title": "Panel Title $vertical",
"type": "timeseries"
}
],
"schemaVersion": 34,
"style": "dark",
"tags": [],
"templating": {
"list": [
{
"current": {
"selected": true,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "vertical",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
},
{
"current": {
"selected": true,
"text": [
"1"
],
"value": [
"1"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "horizontal",
"options": [
{
"selected": false,
"text": "All",
"value": "$__all"
},
{
"selected": true,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"skipUrlSync": false,
"type": "custom"
}
]
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {},
"timezone": "utc",
"title": "Repeating a panel vertically",
"uid": "OY8Ghjt7k",
"version": 1,
"weekStart": ""
}
@@ -0,0 +1,335 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"editable": true,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"iteration": 1640181157128,
"links": [],
"liveNow": false,
"panels": [
{
"collapsed": false,
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 0
},
"id": 2,
"panels": [],
"repeat": "row",
"title": "Row title $row",
"type": "row"
},
{
"datasource": {
"type": "testdata"
},
"description": "",
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 8,
"x": 0,
"y": 1
},
"id": 4,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"title": "Panel Title",
"type": "timeseries"
},
{
"datasource": {
"type": "testdata"
},
"description": "",
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 8,
"x": 0,
"y": 9
},
"id": 9,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"repeat": "horizontal",
"repeatDirection": "h",
"title": "Horizontal repeating $horizontal",
"type": "timeseries"
}
],
"schemaVersion": 34,
"style": "dark",
"tags": [],
"templating": {
"list": [
{
"current": {
"selected": true,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "vertical",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
},
{
"current": {
"selected": true,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "horizontal",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
},
{
"current": {
"selected": true,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "row",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
}
]
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {},
"timezone": "utc",
"title": "Repeating a row with a non-repeating panel and horizontal repeating panel",
"uid": "k3PEoCpnk",
"version": 3,
"weekStart": ""
}
@@ -0,0 +1,335 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"editable": true,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"iteration": 1640181176989,
"links": [],
"liveNow": false,
"panels": [
{
"collapsed": false,
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 0
},
"id": 2,
"panels": [],
"repeat": "row",
"title": "Row title $row",
"type": "row"
},
{
"datasource": {
"type": "testdata"
},
"description": "",
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 8,
"x": 0,
"y": 1
},
"id": 4,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"title": "Panel Title",
"type": "timeseries"
},
{
"datasource": {
"type": "testdata"
},
"description": "",
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 8,
"x": 8,
"y": 1
},
"id": 9,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"repeat": "vertical",
"repeatDirection": "v",
"title": "Vertical repeating $vertical",
"type": "timeseries"
}
],
"schemaVersion": 34,
"style": "dark",
"tags": [],
"templating": {
"list": [
{
"current": {
"selected": true,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "vertical",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
},
{
"current": {
"selected": true,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "horizontal",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
},
{
"current": {
"selected": true,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "row",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
}
]
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {},
"timezone": "utc",
"title": "Repeating a row with a non-repeating panel and vertical repeating panel",
"uid": "7lS-ojt7z",
"version": 2,
"weekStart": ""
}
@@ -0,0 +1,258 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"editable": true,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"iteration": 1640181195825,
"links": [],
"liveNow": false,
"panels": [
{
"collapsed": false,
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 0
},
"id": 2,
"panels": [],
"repeat": "row",
"title": "Row title $row",
"type": "row"
},
{
"datasource": {
"type": "testdata"
},
"description": "",
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 8,
"x": 0,
"y": 1
},
"id": 4,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"title": "Panel Title",
"type": "timeseries"
}
],
"schemaVersion": 34,
"style": "dark",
"tags": [],
"templating": {
"list": [
{
"current": {
"selected": true,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "vertical",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
},
{
"current": {
"selected": true,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "horizontal",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
},
{
"current": {
"selected": true,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "row",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
}
]
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {},
"timezone": "utc",
"title": "Repeating a row with a non-repeating panel",
"uid": "ZzyTojpnz",
"version": 3,
"weekStart": ""
}
@@ -0,0 +1,260 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"editable": true,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"iteration": 1640181211838,
"links": [],
"liveNow": false,
"panels": [
{
"collapsed": false,
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 0
},
"id": 2,
"panels": [],
"repeat": "row",
"title": "Row title $row",
"type": "row"
},
{
"datasource": {
"type": "testdata"
},
"description": "",
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 8,
"x": 0,
"y": 1
},
"id": 4,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"repeat": "horizontal",
"repeatDirection": "h",
"title": "Panel Title $horizontal",
"type": "timeseries"
}
],
"schemaVersion": 34,
"style": "dark",
"tags": [],
"templating": {
"list": [
{
"current": {
"selected": false,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "vertical",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
},
{
"current": {
"selected": false,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "horizontal",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
},
{
"current": {
"selected": true,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "row",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
}
]
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {},
"timezone": "utc",
"title": "Repeating a row with a repeating horizontal panel",
"uid": "0OmtTCtnk",
"version": 3,
"weekStart": ""
}
@@ -0,0 +1,259 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"editable": true,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"iteration": 1640181228045,
"links": [],
"liveNow": false,
"panels": [
{
"collapsed": false,
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 0
},
"id": 2,
"panels": [],
"repeat": "row",
"title": "Row title $row",
"type": "row"
},
{
"datasource": {
"type": "testdata"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 1
},
"id": 4,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"repeat": "vertical",
"repeatDirection": "v",
"title": "Panel Title $vertical",
"type": "timeseries"
}
],
"schemaVersion": 34,
"style": "dark",
"tags": [],
"templating": {
"list": [
{
"current": {
"selected": false,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "vertical",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
},
{
"current": {
"selected": false,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "horizontal",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
},
{
"current": {
"selected": true,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "row",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
}
]
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {},
"timezone": "utc",
"title": "Repeating a row with a repeating vertical panel",
"uid": "I0YIojp7z",
"version": 3,
"weekStart": ""
}
@@ -0,0 +1,183 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"editable": true,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"iteration": 1640181241284,
"links": [],
"liveNow": false,
"panels": [
{
"collapsed": false,
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 0
},
"id": 2,
"panels": [],
"repeat": "row",
"title": "Row title $row",
"type": "row"
}
],
"schemaVersion": 34,
"style": "dark",
"tags": [],
"templating": {
"list": [
{
"current": {
"selected": false,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "vertical",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
},
{
"current": {
"selected": true,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "horizontal",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
},
{
"current": {
"selected": true,
"text": [
"All"
],
"value": [
"$__all"
]
},
"hide": 0,
"includeAll": true,
"multi": true,
"name": "row",
"options": [
{
"selected": true,
"text": "All",
"value": "$__all"
},
{
"selected": false,
"text": "1",
"value": "1"
},
{
"selected": false,
"text": "2",
"value": "2"
},
{
"selected": false,
"text": "3",
"value": "3"
}
],
"query": "1,2,3",
"queryValue": "",
"skipUrlSync": false,
"type": "custom"
}
]
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {},
"timezone": "utc",
"title": "Repeating an empty row",
"uid": "dtpl2Ctnk",
"version": 4,
"weekStart": ""
}
@@ -0,0 +1,76 @@
{
"__inputs": [],
"__elements": [],
"__requires": [
{
"type": "grafana",
"id": "grafana",
"name": "Grafana",
"version": "8.4.0-pre"
},
{
"type": "panel",
"id": "text",
"name": "Text",
"version": ""
}
],
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"editable": true,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"links": [],
"liveNow": false,
"panels": [
{
"gridPos": {
"h": 9,
"w": 12,
"x": 0,
"y": 0
},
"id": 2,
"options": {
"mode": "markdown",
"content": "VariableUnderTest: $VariableUnderTest"
},
"pluginVersion": "8.4.0-pre",
"title": "Panel Title",
"type": "text"
}
],
"schemaVersion": 35,
"style": "dark",
"tags": [],
"templating": {
"list": []
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {},
"timezone": "",
"title": "Test variable output",
"uid": "kVi2Gex7z",
"version": 2,
"weekStart": ""
}
+1 -1
View File
@@ -189,7 +189,7 @@
"type": "dashlist"
}
],
"schemaVersion": 30,
"schemaVersion": 33,
"style": "dark",
"tags": [],
"templating": {
@@ -79,7 +79,8 @@
"stacking": "none",
"text": {},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -151,7 +152,8 @@
"stacking": "none",
"text": {},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -221,7 +223,8 @@
"stacking": "none",
"text": {},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -291,7 +294,8 @@
"stacking": "none",
"text": {},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -305,7 +309,10 @@
"type": "barchart"
},
{
"datasource": "-- Dashboard --",
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
@@ -363,7 +370,8 @@
"valueSize": 25
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -433,7 +441,8 @@
"stacking": "none",
"text": {},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -504,7 +513,8 @@
"stacking": "none",
"text": {},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -519,7 +529,7 @@
}
],
"refresh": "",
"schemaVersion": 30,
"schemaVersion": 33,
"style": "dark",
"tags": [
"gdev",
@@ -1,522 +1,481 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
}
]
},
"editable": true,
"fiscalYearStartMonth": 0,
"graphTooltip": 2,
"id": 319,
"links": [],
"liveNow": false,
"panels": [
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineStyle": {
"dash": [
10,
10
],
"fill": "dash"
},
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "never",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
},
"unit": "currencyUSD"
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "sma"
},
"properties": [
{
"id": "color",
"value": {
"fixedColor": "orange",
"mode": "fixed"
}
},
{
"id": "custom.lineWidth",
"value": 5
},
{
"id": "custom.lineStyle",
"value": {
"dash": [
0,
20
],
"fill": "dot"
}
}
]
},
{
"matcher": {
"id": "byName",
"options": "bolup"
},
"properties": [
{
"id": "custom.fillBelowTo",
"value": "boldn"
},
{
"id": "custom.fillOpacity",
"value": 8
},
{
"id": "color",
"value": {
"fixedColor": "blue",
"mode": "fixed"
}
}
]
}
]
},
"gridPos": {
"h": 16,
"w": 12,
"x": 0,
"y": 0
},
"id": 2,
"options": {
"colorStrategy": "open-close",
"colors": {
"down": "red",
"up": "green"
},
"fields": {},
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"mode": "candles+volume",
"candleStyle": "candles"
},
"targets": [
{
"csvFileName": "ohlc_dogecoin.csv",
"refId": "A",
"scenarioId": "csv_file"
}
],
"title": "Price & Volume",
"type": "candlestick"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
},
"unit": "currencyUSD"
},
"overrides": []
},
"gridPos": {
"h": 20,
"w": 12,
"x": 12,
"y": 0
},
"id": 7,
"options": {
"colorStrategy": "close-close",
"colors": {
"down": "red",
"up": "green"
},
"fields": {},
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"mode": "candles",
"candleStyle": "candles"
},
"targets": [
{
"csvFileName": "ohlc_dogecoin.csv",
"refId": "A",
"scenarioId": "csv_file"
}
],
"title": "Price Only, Hollow Candles",
"transformations": [
{
"id": "filterFieldsByName",
"options": {
"include": {
"names": [
"time",
"open",
"high",
"low",
"close"
]
}
}
}
],
"type": "candlestick"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
},
"unit": "currencyUSD"
},
"overrides": []
},
"gridPos": {
"h": 10,
"w": 12,
"x": 0,
"y": 16
},
"id": 6,
"options": {
"colorStrategy": "open-close",
"colors": {
"down": "red",
"up": "blue"
},
"fields": { },
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"mode": "candles",
"candleStyle": "ohlcbars"
},
"targets": [
{
"csvFileName": "ohlc_dogecoin.csv",
"refId": "A",
"scenarioId": "csv_file"
}
],
"title": "Price Only, OHLC Bars",
"transformations": [
{
"id": "filterFieldsByName",
"options": {
"include": {
"names": [
"time",
"open",
"high",
"low",
"close"
]
}
}
}
],
"type": "candlestick"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 100,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
},
"unit": "currencyUSD"
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "open"
},
"properties": [
{
"id": "custom.hideFrom",
"value": {
"legend": true,
"tooltip": true,
"viz": true
}
}
]
},
{
"matcher": {
"id": "byName",
"options": "close"
},
"properties": [
{
"id": "custom.hideFrom",
"value": {
"legend": true,
"tooltip": true,
"viz": true
}
}
]
}
]
},
"gridPos": {
"h": 6,
"w": 12,
"x": 12,
"y": 20
},
"id": 4,
"options": {
"colorStrategy": "open-close",
"colors": {
"down": "red",
"up": "yellow"
},
"fields": {},
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"mode": "volume",
"candleStyle": "candles"
},
"targets": [
{
"csvFileName": "ohlc_dogecoin.csv",
"refId": "A",
"scenarioId": "csv_file"
}
],
"title": "Volume Only, Alt Colors, 100% Opacity",
"transformations": [
{
"id": "filterFieldsByName",
"options": {
"include": {
"names": [
"time",
"volume",
"open",
"close"
]
}
}
}
],
"type": "candlestick"
"type": "dashboard"
}
],
"refresh": false,
"schemaVersion": 33,
"style": "dark",
"tags": [
"gdev",
"panel-tests",
"graph-ng"
],
"templating": {
"list": []
]
},
"editable": true,
"fiscalYearStartMonth": 0,
"graphTooltip": 2,
"links": [],
"liveNow": false,
"panels": [
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineStyle": {
"dash": [
10,
10
],
"fill": "dash"
},
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "never",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
},
"unit": "currencyUSD"
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "sma"
},
"properties": [
{
"id": "color",
"value": {
"fixedColor": "orange",
"mode": "fixed"
}
},
{
"id": "custom.lineWidth",
"value": 5
},
{
"id": "custom.lineStyle",
"value": {
"dash": [
0,
20
],
"fill": "dot"
}
}
]
},
{
"matcher": {
"id": "byName",
"options": "bolup"
},
"properties": [
{
"id": "custom.fillBelowTo",
"value": "boldn"
},
{
"id": "custom.fillOpacity",
"value": 8
},
{
"id": "color",
"value": {
"fixedColor": "blue",
"mode": "fixed"
}
}
]
}
]
},
"gridPos": {
"h": 16,
"w": 12,
"x": 0,
"y": 0
},
"id": 2,
"options": {
"candleStyle": "candles",
"colorStrategy": "open-close",
"colors": {
"down": "red",
"up": "green"
},
"fields": {},
"includeAllFields": true,
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"mode": "candles+volume"
},
"targets": [
{
"csvFileName": "ohlc_dogecoin.csv",
"refId": "A",
"scenarioId": "csv_file"
}
],
"title": "Price & Volume",
"type": "candlestick"
},
"time": {
"from": "2021-07-13T22:13:30.740Z",
"to": "2021-07-13T22:46:18.921Z"
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
},
"unit": "currencyUSD"
},
"overrides": []
},
"gridPos": {
"h": 20,
"w": 12,
"x": 12,
"y": 0
},
"id": 7,
"options": {
"candleStyle": "candles",
"colorStrategy": "close-close",
"colors": {
"down": "red",
"up": "green"
},
"fields": {},
"includeAllFields": false,
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"mode": "candles"
},
"targets": [
{
"csvFileName": "ohlc_dogecoin.csv",
"refId": "A",
"scenarioId": "csv_file"
}
],
"title": "Price Only, Hollow Candles",
"transformations": [],
"type": "candlestick"
},
"timepicker": {},
"timezone": "",
"title": "Candlestick",
"uid": "MP-Di9F7k",
"version": 7,
"weekStart": ""
}
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
},
"unit": "currencyUSD"
},
"overrides": []
},
"gridPos": {
"h": 10,
"w": 12,
"x": 0,
"y": 16
},
"id": 6,
"options": {
"candleStyle": "ohlcbars",
"colorStrategy": "open-close",
"colors": {
"down": "red",
"up": "blue"
},
"fields": {},
"includeAllFields": false,
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"mode": "candles"
},
"targets": [
{
"csvFileName": "ohlc_dogecoin.csv",
"refId": "A",
"scenarioId": "csv_file"
}
],
"title": "Price Only, OHLC Bars",
"transformations": [],
"type": "candlestick"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 100,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
},
"unit": "currencyUSD"
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "open"
},
"properties": [
{
"id": "custom.hideFrom",
"value": {
"legend": true,
"tooltip": true,
"viz": true
}
}
]
},
{
"matcher": {
"id": "byName",
"options": "close"
},
"properties": [
{
"id": "custom.hideFrom",
"value": {
"legend": true,
"tooltip": true,
"viz": true
}
}
]
}
]
},
"gridPos": {
"h": 6,
"w": 12,
"x": 12,
"y": 20
},
"id": 4,
"options": {
"candleStyle": "candles",
"colorStrategy": "open-close",
"colors": {
"down": "red",
"up": "yellow"
},
"fields": {},
"includeAllFields": false,
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"mode": "volume"
},
"targets": [
{
"csvFileName": "ohlc_dogecoin.csv",
"refId": "A",
"scenarioId": "csv_file"
}
],
"title": "Volume Only, Alt Colors, 100% Opacity",
"transformations": [],
"type": "candlestick"
}
],
"refresh": false,
"schemaVersion": 33,
"style": "dark",
"tags": [
"gdev",
"panel-tests",
"graph-ng"
],
"templating": {
"list": []
},
"time": {
"from": "2021-07-13T22:13:30.740Z",
"to": "2021-07-13T22:46:18.921Z"
},
"timepicker": {},
"timezone": "",
"title": "Candlestick",
"uid": "MP-Di9F7k",
"version": 2,
"weekStart": ""
}
@@ -0,0 +1,436 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"editable": true,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"id": 157,
"links": [],
"liveNow": false,
"panels": [
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": 20
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 22,
"w": 12,
"x": 0,
"y": 0
},
"id": 2,
"options": {
"basemap": {
"config": {},
"name": "Layer 0",
"type": "default"
},
"controls": {
"mouseWheelZoom": true,
"showAttribution": true,
"showDebug": false,
"showScale": false,
"showZoom": true
},
"layers": [
{
"config": {
"rules": [
{
"check": {
"operation": "eq",
"property": "name",
"value": "Greenland"
},
"style": {
"color": {
"fixed": "light-blue"
},
"opacity": 0.4,
"rotation": {
"fixed": 0,
"max": 360,
"min": -360,
"mode": "mod"
},
"size": {
"fixed": 5,
"max": 15,
"min": 2
},
"symbol": {
"fixed": "img/icons/marker/circle.svg",
"mode": "fixed"
},
"textConfig": {
"fontSize": 12,
"offsetX": 0,
"offsetY": 0,
"textAlign": "center",
"textBaseline": "middle"
}
}
},
{
"check": {
"operation": "eq",
"property": "name",
"value": "Antarctica"
},
"style": {
"color": {
"fixed": "#FCE2DE"
},
"opacity": 0.4,
"rotation": {
"fixed": 0,
"max": 360,
"min": -360,
"mode": "mod"
},
"size": {
"fixed": 5,
"max": 15,
"min": 2
},
"symbol": {
"fixed": "img/icons/marker/circle.svg",
"mode": "fixed"
},
"textConfig": {
"fontSize": 12,
"offsetX": 0,
"offsetY": 0,
"textAlign": "center",
"textBaseline": "middle"
}
}
},
{
"check": {
"operation": "eq",
"property": "name",
"value": "Canada"
},
"style": {
"color": {
"fixed": "#37872D"
},
"opacity": 0.4,
"rotation": {
"fixed": 0,
"max": 360,
"min": -360,
"mode": "mod"
},
"size": {
"fixed": 5,
"max": 15,
"min": 2
},
"symbol": {
"fixed": "img/icons/marker/circle.svg",
"mode": "fixed"
},
"textConfig": {
"fontSize": 12,
"offsetX": 0,
"offsetY": 0,
"textAlign": "center",
"textBaseline": "middle"
}
}
},
{
"check": {
"operation": "eq",
"property": "name",
"value": "Mexico"
},
"style": {
"color": {
"fixed": "#1F60C4"
},
"opacity": 0.4,
"rotation": {
"fixed": 0,
"max": 360,
"min": -360,
"mode": "mod"
},
"size": {
"fixed": 5,
"max": 15,
"min": 2
},
"symbol": {
"fixed": "img/icons/marker/circle.svg",
"mode": "fixed"
},
"textConfig": {
"fontSize": 12,
"offsetX": 0,
"offsetY": 0,
"textAlign": "center",
"textBaseline": "middle"
}
}
}
],
"src": "public/maps/countries.geojson",
"style": {
"color": {
"fixed": "dark-green"
},
"opacity": 0.1,
"rotation": {
"fixed": 0,
"max": 360,
"min": -360,
"mode": "mod"
},
"size": {
"fixed": 5,
"max": 15,
"min": 2
},
"symbol": {
"fixed": "img/icons/marker/circle.svg",
"mode": "fixed"
},
"textConfig": {
"fontSize": 12,
"offsetX": 0,
"offsetY": 0,
"textAlign": "center",
"textBaseline": "middle"
}
}
},
"name": "Countries",
"type": "geojson"
},
{
"config": {
"showLegend": true,
"style": {
"color": {
"fixed": "dark-blue"
},
"opacity": 0.4,
"rotation": {
"fixed": 0,
"max": 360,
"min": -360,
"mode": "mod"
},
"size": {
"fixed": 5,
"max": 15,
"min": 2
},
"symbol": {
"fixed": "img/icons/marker/square.svg",
"mode": "fixed"
},
"text": {
"field": "Count",
"fixed": "",
"mode": "field"
},
"textConfig": {
"fontSize": 16,
"offsetX": 10,
"offsetY": 10,
"textAlign": "center",
"textBaseline": "middle"
}
}
},
"location": {
"mode": "auto"
},
"name": "Flights",
"type": "markers"
}
],
"view": {
"id": "coords",
"lat": 42.826559,
"lon": -96.868893,
"zoom": 3.58
}
},
"pluginVersion": "8.3.0-pre",
"targets": [
{
"csvFileName": "flight_info_by_state.csv",
"refId": "A",
"scenarioId": "csv_file"
}
],
"title": "Multi layers",
"type": "geomap"
},
{
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": 20
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 22,
"w": 12,
"x": 12,
"y": 0
},
"id": 3,
"options": {
"basemap": {
"config": {},
"name": "Layer 0",
"type": "default"
},
"controls": {
"mouseWheelZoom": true,
"showAttribution": true,
"showDebug": false,
"showScale": false,
"showZoom": true
},
"layers": [
{
"config": {
"showLegend": true,
"style": {
"color": {
"fixed": "dark-green"
},
"opacity": 0.7,
"rotation": {
"field": "Lng",
"fixed": 0,
"max": 360,
"min": -360,
"mode": "mod"
},
"size": {
"fixed": 10,
"max": 15,
"min": 2
},
"symbol": {
"fixed": "img/icons/marker/plane.svg",
"mode": "fixed"
},
"text": {
"field": "Lng",
"fixed": "",
"mode": "field"
},
"textConfig": {
"fontSize": 12,
"offsetX": 0,
"offsetY": 18,
"textAlign": "center",
"textBaseline": "middle"
}
}
},
"name": "Layer 2",
"type": "markers"
}
],
"view": {
"id": "coords",
"lat": 42.826559,
"lon": -96.868893,
"zoom": 3.58
}
},
"pluginVersion": "8.3.0-pre",
"targets": [
{
"csvFileName": "flight_info_by_state.csv",
"refId": "A",
"scenarioId": "csv_file"
}
],
"title": "Markers",
"type": "geomap"
}
],
"schemaVersion": 33,
"style": "dark",
"tags": [
"gdev",
"geomap",
"panel-tests"
],
"templating": {
"list": []
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {},
"timezone": "",
"title": "Panel Tests - Geomap Multi Layers",
"uid": "2jFpEvp7z",
"version": 8,
"weekStart": ""
}
@@ -362,7 +362,7 @@
}
],
"refresh": "",
"schemaVersion": 30,
"schemaVersion": 33,
"style": "dark",
"tags": [
"gdev",
@@ -95,7 +95,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -181,7 +182,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -266,7 +268,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -280,7 +283,10 @@
"type": "timeseries"
},
{
"datasource": "-- Dashboard --",
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
@@ -352,7 +358,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -437,7 +444,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -455,7 +463,10 @@
"type": "timeseries"
},
{
"datasource": "-- Dashboard --",
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
@@ -531,7 +542,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -544,7 +556,10 @@
"type": "timeseries"
},
{
"datasource": "-- Dashboard --",
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
@@ -620,7 +635,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -633,7 +649,10 @@
"type": "timeseries"
},
{
"datasource": "-- Dashboard --",
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
@@ -709,7 +728,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -797,7 +817,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -825,7 +846,7 @@
}
],
"refresh": false,
"schemaVersion": 30,
"schemaVersion": 33,
"style": "dark",
"tags": [
"gdev",
@@ -34,7 +34,9 @@
],
"panels": [
{
"datasource": "gdev-testdata",
"datasource": {
"type": "testdata"
},
"fieldConfig": {
"defaults": {
"color": {
@@ -100,7 +102,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"pluginVersion": "7.4.0-pre",
@@ -138,7 +141,9 @@
"type": "timeseries"
},
{
"datasource": "gdev-testdata",
"datasource": {
"type": "testdata"
},
"description": "Series A have no nulls and is not aligned with series B",
"fieldConfig": {
"defaults": {
@@ -206,7 +211,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"pluginVersion": "7.4.0-pre",
@@ -252,7 +258,9 @@
"type": "timeseries"
},
{
"datasource": "gdev-testdata",
"datasource": {
"type": "testdata"
},
"description": "",
"fieldConfig": {
"defaults": {
@@ -320,7 +328,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"pluginVersion": "7.4.0-pre",
@@ -386,7 +395,9 @@
"type": "timeseries"
},
{
"datasource": "gdev-testdata",
"datasource": {
"type": "testdata"
},
"fieldConfig": {
"defaults": {
"color": {
@@ -452,7 +463,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"pluginVersion": "7.4.0-pre",
@@ -490,7 +502,9 @@
"type": "timeseries"
},
{
"datasource": "gdev-testdata",
"datasource": {
"type": "testdata"
},
"description": "Series A have no nulls and is not aligned with series B",
"fieldConfig": {
"defaults": {
@@ -558,7 +572,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"pluginVersion": "7.4.0-pre",
@@ -604,7 +619,9 @@
"type": "timeseries"
},
{
"datasource": "gdev-testdata",
"datasource": {
"type": "testdata"
},
"description": "Should look the same as above\n",
"fieldConfig": {
"defaults": {
@@ -672,7 +689,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"pluginVersion": "7.4.0-pre",
@@ -738,7 +756,9 @@
"type": "timeseries"
},
{
"datasource": "gdev-testdata",
"datasource": {
"type": "testdata"
},
"fieldConfig": {
"defaults": {
"color": {
@@ -836,7 +856,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"pluginVersion": "7.2.0-pre",
@@ -878,7 +899,9 @@
"type": "timeseries"
},
{
"datasource": "gdev-testdata",
"datasource": {
"type": "testdata"
},
"fieldConfig": {
"defaults": {
"color": {
@@ -976,7 +999,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"pluginVersion": "7.2.0-pre",
@@ -1082,7 +1106,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"pluginVersion": "7.5.0-pre",
@@ -1184,7 +1209,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -1198,7 +1224,7 @@
"type": "timeseries"
}
],
"schemaVersion": 30,
"schemaVersion": 33,
"style": "dark",
"tags": [
"gdev",
@@ -1346,7 +1346,7 @@
"axisPlacement": "auto",
"drawStyle": "line",
"fillGradient": "hue",
"fillOpacity": 25,
"fillOpacity": 0,
"hideFrom": {
"graph": false,
"legend": false,
@@ -1426,6 +1426,10 @@
"fixedColor": "blue",
"mode": "fixed"
}
},
{
"id": "custom.fillOpacity",
"value": 0
}
]
}
@@ -76,7 +76,10 @@
"type": "histogram"
},
{
"datasource": "-- Dashboard --",
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
@@ -409,7 +412,7 @@
"type": "table"
}
],
"schemaVersion": 30,
"schemaVersion": 33,
"style": "dark",
"tags": [
"gdev",
@@ -815,19 +815,19 @@
"value": "Wm2"
},
{
"text": "Volt-ampere (VA)",
"text": "Volt-Ampere (VA)",
"value": "voltamp"
},
{
"text": "Kilovolt-ampere (kVA)",
"text": "Kilovolt-Ampere (kVA)",
"value": "kvoltamp"
},
{
"text": "Volt-ampere reactive (var)",
"text": "Volt-Ampere reactive (VAr)",
"value": "voltampreact"
},
{
"text": "Kilovolt-ampere reactive (kvar)",
"text": "Kilovolt-Ampere reactive (kVAr)",
"value": "kvoltampreact"
},
{
@@ -89,7 +89,8 @@
"rowHeight": 0.98,
"showValue": "always",
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"pluginVersion": "7.5.0-pre",
@@ -186,7 +187,8 @@
"rowHeight": 0.98,
"showValue": "always",
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -287,7 +289,8 @@
"rowHeight": 0.98,
"showValue": "always",
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -367,7 +370,8 @@
"rowHeight": 0.98,
"showValue": "always",
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "asc"
}
},
"pluginVersion": "7.5.0-pre",
@@ -410,7 +414,7 @@
}
],
"refresh": false,
"schemaVersion": 30,
"schemaVersion": 33,
"style": "dark",
"tags": [
"gdev",
@@ -68,7 +68,8 @@
"rowHeight": 0.9,
"showValue": "always",
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"pluginVersion": "7.5.0-pre",
@@ -244,7 +245,8 @@
"rowHeight": 0.9,
"showValue": "always",
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"pluginVersion": "7.5.0-pre",
@@ -319,7 +321,8 @@
"rowHeight": 0.9,
"showValue": "always",
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"pluginVersion": "7.5.0-pre",
@@ -358,7 +361,7 @@
}
],
"refresh": false,
"schemaVersion": 30,
"schemaVersion": 33,
"style": "dark",
"tags": [
"gdev",
@@ -83,7 +83,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"targets": [
@@ -484,7 +485,8 @@
"showValue": "auto",
"text": {},
"tooltip": {
"mode": "single"
"mode": "single",
"sort": "none"
}
},
"pluginVersion": "8.1.0-pre",
@@ -530,7 +532,7 @@
}
],
"refresh": "",
"schemaVersion": 30,
"schemaVersion": 33,
"style": "dark",
"tags": [
"gdev",
@@ -23,7 +23,10 @@
"links": [],
"panels": [
{
"datasource": "-- Dashboard --",
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
@@ -70,7 +73,10 @@
"type": "table"
},
{
"datasource": "-- Dashboard --",
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
@@ -264,7 +270,10 @@
"type": "gauge"
},
{
"datasource": "-- Dashboard --",
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
@@ -311,7 +320,10 @@
"type": "table"
},
{
"datasource": "-- Dashboard --",
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"color": {
@@ -579,7 +591,7 @@
}
],
"refresh": "",
"schemaVersion": 30,
"schemaVersion": 33,
"style": "dark",
"tags": [
"gdev",
@@ -6,6 +6,7 @@ import (
"io/ioutil"
"log"
"net/http"
"strings"
)
func hello(w http.ResponseWriter, r *http.Request) {
@@ -14,7 +15,8 @@ func hello(w http.ResponseWriter, r *http.Request) {
return
}
line := fmt.Sprintf("webbhook: -> %s", string(body))
safeBody := strings.Replace(string(body), "\n", "", -1)
line := fmt.Sprintf("webbhook: -> %s", safeBody)
fmt.Println(line)
if _, err := io.WriteString(w, line); err != nil {
log.Printf("Failed to write: %v", err)
+1
View File
@@ -0,0 +1 @@
This block starts a test SMTP server on port 1025 and UI on port 12080
@@ -0,0 +1,5 @@
maildev:
image: gillesdemey/maildev
ports:
- "12080:1080"
- "1025:1025"

Some files were not shown because too many files have changed in this diff Show More