Compare commits

..

1476 Commits

Author SHA1 Message Date
jev forsberg
b58701869e update whats new url 2024-12-04 14:19:30 -07:00
idastambuk
b12308499b Cloudwatch: OpenSearch PPL and SQL support in Logs Insights
Co-authored-by: Kevin Yu <kevinwcyu@users.noreply.github.com>
Co-authored-by: Nathan Vērzemnieks <njvrzm@users.noreply.github.com>
2024-12-04 09:13:15 -07:00
Jev Forsberg
80691e4297 [v11.3.x] CI: add missing github app volume to release pipeline (#97414)
CI: add missing github app volume to release pipeline (#97406)

add github app volume to release pipeline

(cherry picked from commit 6fe184a565)

Co-authored-by: Kevin Minehart <5140827+kminehart@users.noreply.github.com>
2024-12-04 08:46:54 -07:00
grafana-delivery-bot[bot]
8bc94106e2 [v11.3.x] Alerting docs: clarify $labels and query labels (#97356)
Some checks failed
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
publish-technical-documentation-release / sync (push) Has been cancelled
Alerting docs: clarify `$labels` and query labels (#97350)

* Alerting docs: clarify `$labels` and query labels

* fix mispell

(cherry picked from commit 8fe36e1c83)

Co-authored-by: Pepe Cano <825430+ppcano@users.noreply.github.com>
2024-12-03 16:11:23 +01:00
grafana-delivery-bot[bot]
54ff80afb1 [v11.3.x] Deprecate notice for metrics summary and Aggregate by (#94788)
Deprecate notice for metrics summary and Aggregate by (#94761)

(cherry picked from commit a5022d9dc6)

Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>
2024-12-03 10:06:38 -05:00
grafana-delivery-bot[bot]
780e191177 [v11.3.x] Packaging: Remove sysvinit references / support from rhel packaging (#97309)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Packaging: Remove sysvinit references / support from rhel packaging (#97068)

Remove sysvinit references / support from rhel packaging

(cherry picked from commit 3448384e0d)

Co-authored-by: Kevin Minehart <5140827+kminehart@users.noreply.github.com>
2024-12-02 22:20:45 +02:00
Jev Forsberg
e80e6e532c [v11.3.x] Chore: Remove verification steps for deb/rpm in drone (#97297)
Chore: Remove verification steps for deb/rpm in drone (#96991)

remove verification steps for deb/rpm in drone

(cherry picked from commit feeb2c6ce0)

Co-authored-by: Serge Zaitsev <serge.zaitsev@grafana.com>
2024-12-02 11:57:59 -07:00
grafana-delivery-bot[bot]
17d7ca7232 [v11.3.x] Docs: Canvas visualization refactor (#97286)
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-12-02 12:11:29 -05:00
grafana-delivery-bot[bot]
bc3fd9d808 [v11.3.x] Docs: Add more information on wrap text override (#97273)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-12-02 11:12:36 -05:00
grafana-delivery-bot[bot]
1de9f9477f [v11.3.x] Fix: Do not fetch Orgs if the user is authenticated by apikey/sa or render key (#97262)
Fix: Do not fetch Orgs if the user is authenticated by apikey/sa or render key (#97162)

* Do not fetch Orgs if the user is authenticated by apikey/sa or render svc

* Lint

(cherry picked from commit fa634e1476)

Co-authored-by: Misi <mgyongyosi@users.noreply.github.com>
2024-12-02 16:06:48 +01:00
grafana-delivery-bot[bot]
4428bf7025 [v11.3.x] Alerting: Fix incorrect 500 code on missing alert rule dashboardUID / panelID (#96775)
Alerting: Fix incorrect 500 code on missing alert rule dashboardUID / panelID (#96491)

(cherry picked from commit 64c93217ff)

Co-authored-by: Matthew Jacobson <matthew.jacobson@grafana.com>
2024-12-02 09:15:40 -05:00
grafana-delivery-bot[bot]
b35522672b [v11.3.x] doc: Fix spacing in sample values for enabling persistence (#97238)
Co-authored-by: Irene Rodriguez <irene.rodriguez@grafana.com>
Co-authored-by: horacimacias <horacimacias@gmail.com>
Fix spacing in sample values for enabling persistence (#97220)
2024-12-02 12:47:48 +02:00
grafana-delivery-bot[bot]
c8031ed338 [v11.3.x] Update index.md to add a note about provisioned data source (#97232)
Co-authored-by: Irene Rodríguez <irene.rodriguez@grafana.com>
Co-authored-by: Gaurav Soni <raveformails@gmail.com>
2024-12-02 12:00:00 +02:00
Sergej-Vlasov
9c606f2302 Update to scenes 5.28.1 (#97204) (#97207)
Some checks failed
Sync to mirror / trigger_downstream_patch_mirror (push) Has been cancelled
update to scenes 5.28.1

(cherry picked from commit 174e9ae193)
2024-11-29 18:16:56 +02:00
grafana-delivery-bot[bot]
8395bda60f [v11.3.x] Alerting: Fix contact points secure settings migration (#97146)
Some checks failed
Sync to mirror / trigger_downstream_patch_mirror (push) Has been cancelled
Alerting: Fix contact points secure settings migration (#95787)

Add missing migration for secure settings, add types to notifiers mocks

(cherry picked from commit 3c8d29fa46)

Co-authored-by: Konrad Lalik <konradlalik@gmail.com>
2024-11-28 14:40:16 +01:00
grafana-delivery-bot[bot]
f8dfaebf4c [v11.3.x] DashboardScene: Fix layout issues with repeated panels when repeatDirection is missing (#97156)
DashboardScene: Fix layout issues with repeated panels when `repeatDirection` is missing (#97149)

fix

(cherry picked from commit 0bf9d68070)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
2024-11-28 14:48:02 +02:00
grafana-delivery-bot[bot]
1c201629d5 [v11.3.x] Docs: Fix broken link (#97121)
Some checks failed
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
publish-technical-documentation-release / sync (push) Has been cancelled
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
Fix broken link (#97119)
2024-11-27 12:07:19 -05:00
grafana-delivery-bot[bot]
37858e7e24 [v11.3.x] Docs: Add note to refresh page after saving dashboards (#97114)
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-11-27 11:28:46 -05:00
grafana-delivery-bot[bot]
60370b4ea6 [v11.3.x] Docs: Add column lists to panel config pages (#97111)
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-11-27 10:37:12 -05:00
Sergej-Vlasov
70c37c9b03 Update scenes to v5.26.0 (#96968) (#97089)
Some checks are pending
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
(cherry picked from commit b23805a78a)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-27 13:38:19 +00:00
Sergej-Vlasov
55cb58b8be Update scenes to v5.25.1 (#96782) (#97086)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
(cherry picked from commit 68e7f6069c)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-27 09:53:29 +00:00
Sergej-Vlasov
1695d2716f Update scenes to v5.25.0 (#96463) (#97060)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
(cherry picked from commit 8375fcd350)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-27 09:06:10 +00:00
Sergej-Vlasov
9ab6d23f77 Update scenes to v5.23.1 (#95951) (#97050)
Some checks are pending
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
* Update scenes to v5.23.1

* Fix e2e tests

* Fix unit tests

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Bogdan Matei <bogdan.matei@grafana.com>
(cherry picked from commit 70c21a2e4d)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-26 15:43:57 +00:00
Sergej-Vlasov
13e8921d27 Update scenes to v5.22.1 (#95655) (#97047)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
(cherry picked from commit b4012b6ac8)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-26 14:58:43 +00:00
grafana-delivery-bot[bot]
d0e5c87992 [v11.3.x] [DOC] Remove simple configuration in Tempo data source docs (#97002)
Some checks failed
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
publish-technical-documentation-release / sync (push) Has been cancelled
[DOC] Remove simple configuration in Tempo data source docs (#96932)

* Remove simple configuration from Tempo data source docs

* Change deprecation to 11.5 for aggregate by

* Update docs/sources/shared/datasources/tempo-search-traceql.md

(cherry picked from commit 18c8ed3088)

Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>
2024-11-25 21:11:36 -05:00
grafana-delivery-bot[bot]
4cb555fa8b [v11.3.x] Docs: Add correlations youtube link to What's new (#95281)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-11-25 10:07:12 -05:00
Alexander Akhmetov
98be4ac047 [v11.3.x] Alerting: Update state manager to have immutable state in cache (#96843)
* Alerting: Update state manager to have immutable state in cache (#95985)

* create a new state and set at the end
* propagate labels datasource_uid and ref_id from current state if it's error
* copy the state when apply to all

(cherry picked from commit 420db99d16)

* Remove unused states variables

---------

Co-authored-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com>
2024-11-25 15:22:40 +01:00
Kevin Minehart
9c7c333856 [v11.3.x] CI: Add github app token generation in pipelines that use GITHUB_TOKEN (#96874)
Some checks failed
publish-technical-documentation-release / sync (push) Has been cancelled
Sync to mirror / trigger_downstream_patch_mirror (push) Has been cancelled
CI: Add github app token generation in pipelines that use GITHUB_TOKEN (#96646)

* Add github app token generation in pipelines that use GITHUB_TOKEN

* ci?

* clone gh repo using x-access-token user

* address linting issues

* use mounted volume for exporting token

* remove unused github_token env var swagger gen step

* replace pat on release_pr pipepline

* cleanup GH PAT references

* linting

* Update scripts/drone/steps/lib.star

* make drone

---------

Co-authored-by: Matheus Macabu <macabu.matheus@gmail.com>
(cherry picked from commit 2400483d6c)
2024-11-21 21:08:48 -06:00
Jacob Valdez
d15321179e [v11.3.x] Docs: Removing outdated versioning info in create reports (#96808)
Docs: Removing outdated versioning info in create reports (#96804)

Removing outdated versioning info in create reports

(cherry picked from commit e6a771cf4a)

Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-11-21 15:28:19 -06:00
grafana-delivery-bot[bot]
f0e56bdf64 [v11.3.x] Docs: Update InfluxDB data source documentation (#96864)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Docs:  Update InfluxDB data source documentation (#96343)

* created config doc, made initial changes

* initial draft of config doc completed

* additional edits

* moved config doc into directory, renamed

* made additional updates

* template variables updates/cleanup

* cleaned up intro page, some more minor edits

* edited and re-formatted configure the data source doc

* final edits

* more edits

* minor changes prior to PR

* fix typo

* Update docs/sources/datasources/influxdb/_index.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* Update docs/sources/datasources/influxdb/_index.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* Update docs/sources/datasources/influxdb/_index.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* Update docs/sources/datasources/influxdb/_index.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* Update docs/sources/datasources/influxdb/_index.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* Update docs/sources/datasources/influxdb/query-editor/index.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* Update docs/sources/datasources/influxdb/query-editor/index.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* Update docs/sources/datasources/influxdb/template-variables/index.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* Update docs/sources/datasources/influxdb/query-editor/index.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* Update docs/sources/datasources/influxdb/configure-influxdb-data-source/_index.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* Update docs/sources/datasources/influxdb/query-editor/index.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* updates based on feedback

* ran prettier

---------

Co-authored-by: Irene Rodríguez <irene.rodriguez@grafana.com>
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
(cherry picked from commit 26be86ee15)

Co-authored-by: Larissa Wandzura <126723338+lwandz13@users.noreply.github.com>
2024-11-21 13:48:12 -06:00
grafana-delivery-bot[bot]
bc89fe04b9 [v11.3.x] Alerting docs: fix data source link (#96844)
Alerting docs: fix data source link (#96819)

* Alerting docs: fix data source link

* updates

* corrects menu path

* correct pattern destination

(cherry picked from commit b392a44737)

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2024-11-21 15:10:28 +01:00
grafana-delivery-bot[bot]
e3367ccf9a [v11.3.x] Scenes: Fix angular migrations that are using the targets property on the old panel model (#96831)
Scenes: Fix angular migrations that are using the targets property on the old panel model (#96626)

Fix angular migrations using target

(cherry picked from commit 5986b03a8f)

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
2024-11-21 13:32:12 +01:00
grafana-delivery-bot[bot]
dfb1f9a3c1 [v11.3.x] Docs: stat visualization refactor (#96801)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-11-20 15:40:58 -05:00
grafana-delivery-bot[bot]
f5cf121eb5 [v11.3.x] Docs: Moved and renamed navigation section (#96797)
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-11-20 15:25:33 -05:00
grafana-delivery-bot[bot]
64b556c137 [v11.3.x] Added docket tag note to security section (#96726)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
Co-authored-by: margotphelps <123196595+margotphelps@users.noreply.github.com>
2024-11-19 15:45:02 -05:00
github-actions[bot]
8d6bbb7a4b Release: 11.3.1 (#96714)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
* Update changelog

* Update version to 11.3.1

* Update version

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
2024-11-19 18:36:29 +00:00
Isabel Matwawana
08e10ff665 [v11.3.x] Docs: Node graph visualization refactor (#96707) 2024-11-19 11:40:10 -05:00
grafana-delivery-bot[bot]
13d60c9bd4 [v11.3.x] Docs: Logs visualization refactor (#96637)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-11-18 10:22:53 -05:00
grafana-delivery-bot[bot]
96d1d5a07b [v11.3.x] Alerting docs: fix query syntax sentence (#96618)
Alerting docs: fix query syntax sentence (#96614)

* Alerting docs: fix query syntax sentence

* updates sentence

* pepes feedback

(cherry picked from commit d187716e73)

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2024-11-18 12:26:24 +01:00
grafana-delivery-bot[bot]
c97b64e9ff [v11.3.x] Docs: Added New Release Dates,Security Versioning and Freezes (#96571)
Some checks failed
publish-technical-documentation-release / sync (push) Has been cancelled
Sync to mirror / trigger_downstream_patch_mirror (push) Has been cancelled
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
Co-authored-by: Isabel Matwawana <isabel.matwawana@grafana.com>
Co-authored-by: margotphelps <123196595+margotphelps@users.noreply.github.com>
2024-11-15 11:09:33 -05:00
grafana-delivery-bot[bot]
54eca5c73f [v11.3.x] Docs: Bar chart visualization refactor (#96560)
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-11-15 10:09:40 -05:00
grafana-delivery-bot[bot]
4b634e887d [v11.3.x] Docs: Plugin Installation - reorganize and add air-gapped environments (#96533)
Docs: Plugin Installation - reorganize and add air-gapped environments (#96437)

* rewriting installation docs and including info about airgapped environments

* Changing example to lokieexplore app

* run prettier

* adding corrections

* running prettier

---------

Co-authored-by: Irene Rodriguez <irene.rodriguez@grafana.com>
(cherry picked from commit 0f4517df98)

Co-authored-by: Timur Olzhabayev <timur.olzhabayev@grafana.com>
2024-11-15 13:55:27 +01:00
Konrad Lalik
9225f4a1cb [v11.3.x] Alerting: Add useReturnTo hook to safely handle returnTo parameter (#96481)
Some checks are pending
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Alerting: Add useReturnTo hook to safely handle returnTo parameter (#96474)

Add useReturnTo hook to safely handle returnTo parameter

Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>
(cherry picked from commit 54cc666aa0)

Co-authored-by: Kevin Minehart <5140827+kminehart@users.noreply.github.com>
2024-11-15 10:10:37 +02:00
grafana-delivery-bot[bot]
a09dcda92d [v11.3.x] Alerting: Fix per-receiver RBAC for receivers with long names (#95165)
Some checks are pending
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Alerting: Fix per-receiver RBAC for receivers with long names (#95084)

* Implement uidToResourceID

* add middleware

* Move uidToResourceID to alerting package

* Only hash uid if it's too long

* Use hashed uid in access control

* Move ReceiverUidToResourceId to ScopeProvider

* resolve uid in middleware only if param exists

* Tests

* Linting

---------

Co-authored-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com>
(cherry picked from commit 4aad44e848)

Co-authored-by: Matthew Jacobson <matthew.jacobson@grafana.com>
2024-11-14 13:01:31 -05:00
grafana-delivery-bot[bot]
a6bc76df32 [v11.3.x] Docs: Add canvas custom images and icon guidance (#96470)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Co-authored-by: Drew Slobodnjak <60050885+drew08t@users.noreply.github.com>
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-11-14 11:02:48 -05:00
grafana-delivery-bot[bot]
d5cbf07090 [v11.3.x] Docs/adding information on using variable expansion and env variable for TLS certs when provisioning data sources (#96471)
Docs/adding information on using variable expansion and env variable for TLS certs when provisioning data sources (#96400)

Docs/adding information on using variable expansion and env variables for TLS certs when provisioning data sources

(cherry picked from commit 28ad9684e9)

Co-authored-by: Jacob Valdez <jacob.valdez@grafana.com>
2024-11-14 17:36:23 +02:00
kay delaney
d32c02ae14 [v11.3.x] Dashboard datasource: Return annotations as series when query topic is "annotations" (#95971)
Dashboard datasource: Return annotations as series when query topic is "annotations" (#95965)

(cherry picked from commit 26b0e8f105)
2024-11-14 14:45:17 +00:00
grafana-delivery-bot[bot]
d815e1107d [v11.3.x] Alerting docs: adds cloud alert rule limits (#96442)
Alerting docs: adds cloud alert rule limits (#96441)

(cherry picked from commit 14d868a791)

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2024-11-14 12:38:07 +02:00
Victor Marin
700f59a0ea [v11.3.x] Fix dashboards listing table appearing distorted (#96390)
Some checks are pending
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Fix dashboards listing table appearing distorted (#96371)

* fix CSS

* approx height calc to account for header div

(cherry picked from commit 19c04168c3)
2024-11-14 09:37:27 +02:00
grafana-delivery-bot[bot]
a6cdb48249 [v11.3.x] Docs: Add auth entries to what's new 11.2 (#96394)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-11-13 09:29:15 -05:00
grafana-delivery-bot[bot]
ecf127c0fa [v11.3.x] Docs/removing outdated versioning info in OSS data source docs (#96352)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Docs/removing outdated versioning info in OSS data source docs (#96351)

docs/removing outdated versioning info in oss data source docs

(cherry picked from commit f83f7332a1)

Co-authored-by: Jacob Valdez <jacob.valdez@grafana.com>
2024-11-12 15:02:20 -06:00
lean.dev
9241bc5f5c [v11.3.x] MigrationAssistant: Restrict dashboards, folders and datasources by the org id of the signed in user (#96345)
apply security patch: v11.3.x/194-202410181505.patch
2024-11-12 16:33:00 -03:00
github-actions[bot]
a2b1cda210 Release: 11.3.0+security-01 (#96295)
* Update changelog

* add relevant CVE fix to the changelog

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Sergej-Vlasov <sergej.s.vlasov@gmail.com>
2024-11-12 16:01:43 +00:00
grafana-delivery-bot[bot]
50762226a0 [v11.3.x] docs: Fixed title wording from bar gauge to canvas (#96319)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Co-authored-by: Señor Performo - Leandro Melendez <54183040+srperf@users.noreply.github.com>
Fixed title wording from bar gauge to canvas (#96312)
2024-11-12 10:13:31 -05:00
grafana-delivery-bot[bot]
58333e0507 [v11.3.x] Alerting: Fix setting datasource uid, when datasource is string in old version (#96273)
Alerting: Fix setting datasource uid, when datasource is string in old version (#96085)

fix setting datasource uid, when datasource is string in old versions rules

(cherry picked from commit 2f58311eea)

Co-authored-by: Sonia Aguilar <33540275+soniaAguilarPeiron@users.noreply.github.com>
2024-11-12 14:23:44 +01:00
Adela Almasan
5cc78ea219 [v11.3.x] Actions: Fix interpolation (#96247)
øActions: Fix interpolation  (#96161)

(cherry picked from commit 754351273b)
2024-11-12 07:21:59 -06:00
grafana-delivery-bot[bot]
a8cb62f05a [v11.3.x] Alerting docs: adds prereqs to configure data source (#96274)
Alerting docs: adds prereqs to configure data source (#96272)

* Alerting docs: adds prereqs to configure data source

* fixes numbering

(cherry picked from commit 35572c9731)

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2024-11-12 11:59:30 +01:00
grafana-delivery-bot[bot]
89ea2a15ce [v11.3.x] docs: Update CanvasDoc adding video link (#95994)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
docs: Update CanvasDoc adding video link (#95953)

Update CanvasDoc adding video link

(cherry picked from commit cd3a71e7cb)

Co-authored-by: Señor Performo - Leandro Melendez <54183040+srperf@users.noreply.github.com>
2024-11-11 15:14:34 +01:00
grafana-delivery-bot[bot]
5e1479d887 [v11.3.x] Alerting docs: fixes broken oncall link (#96217)
Alerting docs: fixes broken oncall link (#96215)

(cherry picked from commit ca04cf780b)

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2024-11-11 14:08:58 +01:00
grafana-delivery-bot[bot]
f1c4e83865 [v11.3.x] Flame Graph: Fix crash when it receives empty data (#96211)
Flame Graph: Fix crash when it receives empty data (#95604)

flame graph crash

(cherry picked from commit 3012d4c043)

Co-authored-by: jackyin <yincong@baidu.com>
2024-11-11 13:00:23 +00:00
grafana-delivery-bot[bot]
cfa3ef73a1 [v11.3.x] Alerting docs: updates to landing page (#96214)
Alerting docs: updates to landing page (#96200)

* Alerting docs: updates to landing page

* Update docs/sources/alerting/_index.md

Co-authored-by: Pepe Cano <825430+ppcano@users.noreply.github.com>

---------

Co-authored-by: Pepe Cano <825430+ppcano@users.noreply.github.com>
(cherry picked from commit 19bed65d9b)

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2024-11-11 13:45:21 +01:00
grafana-delivery-bot[bot]
c99c8c56e2 [v11.3.x] Alerting docs: Move Meta monitoring to Additional configuration section (#96207)
Alerting docs: Move `Meta monitoring` to `Additional configuration` section (#96150)

(cherry picked from commit 154a2e0d06)

Co-authored-by: Pepe Cano <825430+ppcano@users.noreply.github.com>
2024-11-11 11:23:50 +01:00
grafana-delivery-bot[bot]
5b1a386dac [v11.3.x] BarChart: Fix threshold lines rendering for horizontal orientation (#96137)
Some checks failed
Sync to mirror / trigger_downstream_patch_mirror (push) Has been cancelled
BarChart: Fix threshold lines rendering for horizontal orientation (#95737)

* Use different threshold x/y coordinates depending on orientation

* invert wording / semantics

---------

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
(cherry picked from commit 95692b3d68)

Co-authored-by: Kristina <kristina.durivage@grafana.com>
2024-11-09 13:45:03 -06:00
Fayzal Ghantiwala
8bc0014845 [v11.3.x] Alerting: Make context deadline on AlertNG service startup configurable (#96135)
Some checks failed
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
publish-technical-documentation-release / sync (push) Has been cancelled
Alerting: Make context deadline on AlertNG service startup configurable (#96053)

* Make alerting context deadline configurable

* Remove debug logs

* Change default timeout

* Update tests

(cherry picked from commit 1fdc48faba)
2024-11-08 16:46:50 +00:00
grafana-delivery-bot[bot]
8f10dbe12d [v11.3.x] Alerting: Fix editing expressions refId (#95035)
Alerting: Fix editing expressions refId (#94941)

Fix refId editing

(cherry picked from commit 836881b713)

Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>
2024-11-08 16:54:01 +01:00
grafana-delivery-bot[bot]
546e0e214b [v11.3.x] Alerting: Force refetch prom rules when refreshing panel (#96125)
Alerting: Force refetch prom rules when refreshing panel (#96120)

Force refetch prom rules when refreshing panel

(cherry picked from commit ea0a6a1f7f)

Co-authored-by: Sonia Aguilar <33540275+soniaAguilarPeiron@users.noreply.github.com>
2024-11-08 16:36:51 +01:00
grafana-delivery-bot[bot]
3704073e6f [v11.3.x] Alerting docs: reuse Additional configuration page for Cloud docs (#96121)
Alerting docs: reuse `Additional configuration` page for Cloud docs (#96101)

(cherry picked from commit b953190328)

Co-authored-by: Pepe Cano <825430+ppcano@users.noreply.github.com>
2024-11-08 16:19:04 +01:00
grafana-delivery-bot[bot]
c9c1bbfa6e [v11.3.x] Alerting docs: changes advanced to additional (#96092)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Alerting docs: changes advanced to additional (#96083)

(cherry picked from commit 86bc087257)

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2024-11-08 14:32:30 +02:00
grafana-delivery-bot[bot]
402b023b45 [v11.3.x] Alerting docs: adds advanced config section (#96050)
Alerting docs: adds advanced config section (#96013)

* Alerting docs: adds advanced config section

* corrects ref

* feedback from pepe

* renames detect and respond

(cherry picked from commit b2af163dc5)

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2024-11-08 09:58:18 +01:00
grafana-delivery-bot[bot]
be895603c8 [v11.3.x] Docs: clarify the description of actions_allow_post_url (#96045)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Docs: clarify the description of actions_allow_post_url (#95995)

* Docs: clarify the description of actions_allow_post_url

* adding a word to clarify this extends the default behavior and doesn't replace it

* Update docs/sources/setup-grafana/configure-grafana/_index.md

Co-authored-by: Beverly Buchanan <131809838+BeverlyJaneJ@users.noreply.github.com>

* Update docs/sources/setup-grafana/configure-grafana/_index.md

Co-authored-by: Beverly Buchanan <131809838+BeverlyJaneJ@users.noreply.github.com>

---------

Co-authored-by: Beverly Buchanan <131809838+BeverlyJaneJ@users.noreply.github.com>
(cherry picked from commit 4cc204affe)

Co-authored-by: Jacob Valdez <jacob.valdez@grafana.com>
2024-11-07 10:15:59 -06:00
grafana-delivery-bot[bot]
c2d85230b1 [v11.3.x] Alerting docs: Introduction - brief overview of notification messages. (#96042)
Alerting docs: Introduction - brief overview of notification messages. (#95987)

* Intro: simplify `Architecture`. Add a new guideline

* Define `Notification policies` as an advanced option

* Intro: include about "Notification messages"

* Minor copy changes

(cherry picked from commit ff2f612412)

Co-authored-by: Pepe Cano <825430+ppcano@users.noreply.github.com>
2024-11-07 16:51:12 +01:00
Jack Westbrook
3824dc412d [v11.3.x] Chore: Resolve duplicate e2e-selectors packages to workspace (#94945)
chore(yarn): resolve scenes e2e selectors to workspace version
2024-11-07 16:40:35 +01:00
grafana-delivery-bot[bot]
0e0a2c0371 [v11.3.x] Alerting: Fix saving advanced mode toggle state in the alert rule editor (#95981)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Alerting: Fix saving advanced mode toggle state in the alert rule editor (#95924)

(cherry picked from commit 4ce1abc6f9)

Co-authored-by: Alexander Akhmetov <me@alx.cx>
2024-11-06 19:04:59 +01:00
grafana-delivery-bot[bot]
8273628550 [v11.3.x] Alerting docs: specify using multiple contact point integrations in the UI and HTTP API (#95967)
Alerting docs: specify using multiple contact point integrations in the UI and HTTP API (#95890)

* Sort list of contact points on the sidebar

* Update `Configure contact points` to clarify contact point integrations

* Alerting HTTP API: fix `EmbeddedContactPoint` properties table

* HTTP Alerting API: clarify how `ContactPoint.name` groups contact points

* Update docs/sources/alerting/configure-notifications/manage-contact-points/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

---------

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
(cherry picked from commit 290612e366)

Co-authored-by: Pepe Cano <825430+ppcano@users.noreply.github.com>
2024-11-06 15:45:52 +01:00
grafana-delivery-bot[bot]
d489ecf794 [v11.3.x] Dashboard: Append orgId to URL (#95963)
Dashboard: Append orgId to URL (#95960)

(cherry picked from commit 52f4bd64e0)

Co-authored-by: Bogdan Matei <bogdan.matei@grafana.com>
2024-11-06 16:28:37 +02:00
grafana-delivery-bot[bot]
16411b1b4a [v11.3.x] ServerLock: Fix pg concurrency/locking issue (#95935)
Some checks are pending
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
ServerLock: Fix pg concurrency/locking issue (#95916)

Fix pg unique constraint validation in serverlock

(cherry picked from commit ab974ddf14)

Co-authored-by: Misi <mgyongyosi@users.noreply.github.com>
2024-11-06 11:09:20 +02:00
grafana-delivery-bot[bot]
8567089ed2 [v11.3.x] Docs: Updating steps for pulling Grafana metrics into Prometheus (#95918)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Docs: Updating steps for pulling Grafana metrics into Prometheus (#95913)

* Docs: Updating steps for pulling Grafana metrics into Prometheus

* slight update based on review

(cherry picked from commit 9a1e7de79d)

Co-authored-by: Jacob Valdez <jacob.valdez@grafana.com>
2024-11-06 00:17:12 +02:00
grafana-delivery-bot[bot]
1100a0409f [v11.3.x] [DOC] Add Pyroscope to list of products (#95911)
[DOC] Add Pyroscope to list of products (#95884)

* Add Pyroscope to list of products

* Update docs/sources/shared/basics/what-is-grafana.md

* Apply suggestions from code review

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
Co-authored-by: Bryan Huhta <32787160+bryanhuhta@users.noreply.github.com>

---------

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
Co-authored-by: Bryan Huhta <32787160+bryanhuhta@users.noreply.github.com>
(cherry picked from commit 78c5fe61df)

Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>
2024-11-05 15:00:20 -05:00
grafana-delivery-bot[bot]
a7c1f37435 [v11.3.x] Azure: Handle namespace request rejection (#95909)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Azure: Handle namespace request rejection (#95574)

Handle rejection and add test

(cherry picked from commit da1a5426d0)

Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
2024-11-05 21:06:30 +02:00
grafana-delivery-bot[bot]
cbf9e323b6 [v11.3.x] Docs: updating auto_refresh_license information (#95902)
Docs: updating auto_refresh_license information (#95804)

(cherry picked from commit a8578484bb)

Co-authored-by: Jacob Valdez <jacob.valdez@grafana.com>
2024-11-05 18:38:53 +01:00
grafana-delivery-bot[bot]
0826aa0078 [v11.3.x] Alerting docs: Update Create alert rules from panels (#95818)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Alerting docs: Update `Create alert rules from panels` (#95566)

* Alerting docs: Update `Create alert rules from panels`

* Remove screenshots except when the panel displays alert status

* Further changes sync with Brenda

* minor changes

* Relocate admonition

* Specify `dashboardUId` and `panelId` must be set together

* Update docs/sources/alerting/alerting-rules/link-alert-rules-to-dashboards.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* change title

* change URL

* fix spell error

---------

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
(cherry picked from commit facca37f4d)

Co-authored-by: Pepe Cano <825430+ppcano@users.noreply.github.com>
2024-11-05 10:13:57 +01:00
grafana-delivery-bot[bot]
9bb7d77cdb [v11.3.x] Timeseries: Utilize min/max on stacking percentage (#95793)
Some checks are pending
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Timeseries: Utilize min/max on stacking percentage (#95581)

* Bring in defined min/max into stacking range

* simplify logic

* different approach

---------

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
(cherry picked from commit 68aefc73b6)

Co-authored-by: Kristina <kristina.durivage@grafana.com>
2024-11-04 15:09:28 -06:00
grafana-delivery-bot[bot]
e31c4fc59b [v11.3.x] Alerting: Fix contact points secrets validation (#95777)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Alerting: Fix contact points secrets validation (#95651)

Add new condition to the determineRequired function

(cherry picked from commit e43bec2cd8)

Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>
2024-11-04 15:10:03 +01:00
grafana-delivery-bot[bot]
28f9eb3221 [v11.3.x] Alerting docs: add Time type documentation for notification templates (#95776)
Alerting docs: add `Time` type documentation for notification templates (#95688)

* Improve `tz` and `date` docs

* Add documentation for `Time` type

(cherry picked from commit 9d937725ad)

Co-authored-by: Pepe Cano <825430+ppcano@users.noreply.github.com>
2024-11-04 12:48:55 +01:00
grafana-delivery-bot[bot]
693ed6dddd [v11.3.x] Alerting docs: fix alertname label name (#95767)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Alerting docs: fix `alertname` label name (#95665)

(cherry picked from commit 8a0c920106)

Co-authored-by: Pepe Cano <825430+ppcano@users.noreply.github.com>
2024-11-04 10:54:58 +01:00
grafana-delivery-bot[bot]
8f030aa210 [v11.3.x] Alerting docs: Add one notification template example that prints a title or subject (#95766)
Alerting docs: Add one notification template example that prints a title or subject (#95680)

(cherry picked from commit d3a3e53354)

Co-authored-by: Pepe Cano <825430+ppcano@users.noreply.github.com>
2024-11-04 10:54:40 +01:00
grafana-delivery-bot[bot]
ef12cfe67d [v11.3.x] E2E: remove duplicate loki e2e tests (#95667)
Some checks failed
Sync to mirror / trigger_downstream_patch_mirror (push) Has been cancelled
E2E: remove duplicate loki e2e tests (#95644)

* remove duplicate loki e2e tests to avoid flakiness

* unskip test

* adjust panel ids

(cherry picked from commit 9f5258717e)

Co-authored-by: Sergej-Vlasov <37613182+Sergej-Vlasov@users.noreply.github.com>
2024-11-01 09:56:38 +00:00
grafana-delivery-bot[bot]
4f80c4c55c [v11.3.x] Unified Storage: Use ssl_mode instead of sslmode (#95662)
Some checks failed
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
publish-technical-documentation-release / sync (push) Has been cancelled
Unified Storage: Use ssl_mode instead of sslmode (#95658)

change unistore to use ssl_mode instead of sslmode

(cherry picked from commit 76b43267c8)

Co-authored-by: Georges Chaudy <chaudyg@gmail.com>
2024-10-31 15:30:34 +00:00
grafana-delivery-bot[bot]
66518db34c [v11.3.x] Docs: Updating versions in activating AWS marketplace license (#95656)
Co-authored-by: Jacob Valdez <jacob.valdez@grafana.com>
2024-10-31 15:08:25 +01:00
grafana-delivery-bot[bot]
855dcd7b7b [v11.3.x] Migration: Remove table aliasing in delete statement to make it work for mariadb (#95232)
Some checks are pending
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Migration: Remove table aliasing in delete statement to make it work for mariadb (#95226)

Migration: remove table aliasing in delete statement to make it work in mariadb
(cherry picked from commit 6f7528f896)

Co-authored-by: Karl Persson <kalle.persson@grafana.com>
2024-10-31 07:51:27 +00:00
grafana-delivery-bot[bot]
ab85eacea6 [v11.3.x] Docs: adding SAML name parameter configuration info (#95621)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Co-authored-by: Jacob Valdez <jacob.valdez@grafana.com>
2024-10-30 18:03:22 +01:00
grafana-delivery-bot[bot]
11aedea347 [v11.3.x] Graphite: Fix Multi Dimensional Alias Name (#95618)
Graphite: Fix Multi Dimensional Alias Name (#94563)

(cherry picked from commit 89da7d6fe5)

Co-authored-by: Alyssa (Bull) Joyner <58453566+alyssabull@users.noreply.github.com>
2024-10-30 16:12:41 +00:00
grafana-delivery-bot[bot]
fdc1859d0d [v11.3.x] GCM: Fix error checking for GCE project getter (#95617)
GCM: Fix error checking for GCE project getter (#95613)

Appropriately check error

(cherry picked from commit 08e880a823)

Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
2024-10-30 15:50:25 +00:00
grafana-delivery-bot[bot]
1540c767cc [v11.3.x] Folders: Don't show error pop-up if the user can't fetch the root folder (#95600)
Folders: Don't show error pop-up if the user can't fetch the root folder (#95569)

don't show error pop-up if the user can't read general folder

(cherry picked from commit 092a1813ef)

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2024-10-30 11:06:06 +00:00
grafana-delivery-bot[bot]
7f36355451 [v11.3.x] Remove second aliases section (#95595)
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-10-30 10:00:21 +00:00
grafana-delivery-bot[bot]
397c96c1cc [v11.3.x] Docs: Adding memory requirements to image renderer docs (#95572)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Docs: Adding memory requirements to image renderer docs (#95571)

Adding memory requirements to image renderer docs

(cherry picked from commit d480900a9b)

Co-authored-by: Jacob Valdez <jacob.valdez@grafana.com>
2024-10-29 13:10:44 -05:00
grafana-delivery-bot[bot]
13336dd198 [v11.3.x] Alerting docs: Update Recording Rules (#95535)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Alerting docs: Update Recording Rules (#95435)

* WIP - Restructure recording rule pages

* Add more `Recording rules` use cases

* Update `Intro > Alert rules`. Minor style changes and updates to the recording rules section

* Minor verb change

* Switch `aliases` and fix broken link

* Bold for clarity

* Complete `Create recording rules in Grafana Alerting`

* Complete data source-managed recording rules

* Final update

(cherry picked from commit 9b91be739d)

Co-authored-by: Pepe Cano <825430+ppcano@users.noreply.github.com>
2024-10-29 09:58:35 +01:00
grafana-delivery-bot[bot]
cb5df488a8 [v11.3.x] Replace myself with Irene who oversees Grafana documentation (#95494)
Some checks failed
publish-technical-documentation-release / sync (push) Has been cancelled
Sync to mirror / trigger_downstream_patch_mirror (push) Has been cancelled
Co-authored-by: Irene Rodríguez <irene.rodriguez@grafana.com>
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-10-28 15:35:58 +02:00
grafana-delivery-bot[bot]
5af40ed44f [v11.3.x] User: Check SignedInUser OrgID in RevokeInvite (#95490)
User: Check SignedInUser OrgID in RevokeInvite (#95476)

Check SignedInUser OrgID in RevokeInvite

(cherry picked from commit fedcf47702)

Co-authored-by: Misi <mgyongyosi@users.noreply.github.com>
2024-10-28 14:42:19 +02:00
grafana-delivery-bot[bot]
c081bb53d0 [v11.3.x] Update _index.md (#95475)
Co-authored-by: Irene Rodríguez <irene.rodriguez@grafana.com>
Co-authored-by: Jay <92761481+JayEkin@users.noreply.github.com>
2024-10-28 12:01:23 +02:00
grafana-delivery-bot[bot]
8ea5af7335 [v11.3.x] Update _index.md (#95470)
Co-authored-by: Irene Rodríguez <irene.rodriguez@grafana.com>
Co-authored-by: Jay <92761481+JayEkin@users.noreply.github.com>
2024-10-28 11:28:27 +02:00
grafana-delivery-bot[bot]
d763aae5f2 [v11.3.x] Service Accounts: Run service account creation in transaction (#94803)
Some checks are pending
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Service Accounts: Run service account creation in transaction (#94744)

* run service account creation DB queries in transaction

* extract the signed in user from the context

* undo unneeded change

* don't error out if a user is not found

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

Co-authored-by: Misi <mgyongyosi@users.noreply.github.com>

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

Co-authored-by: Karl Persson <kalle.persson@grafana.com>

---------

Co-authored-by: Misi <mgyongyosi@users.noreply.github.com>
Co-authored-by: Karl Persson <kalle.persson@grafana.com>
(cherry picked from commit ca1fd028a2)

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2024-10-27 20:50:20 +01:00
Kevin Minehart
4a30c85b77 [v11.3.x] CI: Consolidate package and docker steps (#95419)
Some checks failed
publish-technical-documentation-release / sync (push) Has been cancelled
Sync to mirror / trigger_downstream_patch_mirror (push) Has been cancelled
update .drone.yml
2024-10-25 12:44:15 -05:00
Drew Slobodnjak
a78607432e [v11.3.x] Table: Fix text wrapping applying to wrong field (#95425)
Table: Fix text wrapping applying to wrong field (#93707)

* Fix text wrap
---------

Co-authored-by: Ihor Yeromin <yeryomin.igor@gmail.com>
(cherry picked from commit d7ee3ea086)

Co-authored-by: Kyle Cunningham <codeincarnate@users.noreply.github.com>
2024-10-25 08:55:39 -07:00
grafana-delivery-bot[bot]
12a54c2414 [v11.3.x] Docs: Fix shared file references (#95289)
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
Fix shared file references (#95287)
2024-10-25 11:15:23 -04:00
grafana-delivery-bot[bot]
bb4e253c76 [v11.3.x] Docs: Table visualization update (#95286)
Co-authored-by: Adela Almasan <88068998+adela-almasan@users.noreply.github.com>
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-10-25 11:09:50 -04:00
Kevin Minehart
90a562257c [v11.3.x] CI: Remove drone steps for building windows because its done in grafana-… (#95413)
Some checks are pending
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
CI: Remove drone steps for building windows because it's done in grafana-… (#95373)

Remove drone steps for building windows because it's done in grafana-build now

(cherry picked from commit 67b3848fd9)
2024-10-25 07:53:52 -06:00
grafana-delivery-bot[bot]
5889d680e9 [v11.3.x] Folders: Add admin permissions upon creation of a folder w. SA (#95365)
Folders: Add admin permissions upon creation of a folder w. SA (#95072)

* add admin permissions upon creation of a folder w. SA

* Update pkg/services/folder/folderimpl/folder.go

Co-authored-by: Karl Persson <kalle.persson@grafana.com>

* Grant service account permissions for creation of dashboards

* Grant service account admin permissions upon creating a datasource

* fetch user using the userservice with the userid

* Revert "fetch user using the userservice with the userid"

This reverts commit 23cba78752.

* revert back to original datasource creation

---------

Co-authored-by: Karl Persson <kalle.persson@grafana.com>
(cherry picked from commit 9ab064bfc5)

Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>
2024-10-25 08:51:09 +01:00
grafana-delivery-bot[bot]
86deb2b4c4 [v11.3.x] Auth: Increase name_id and session_id length to 1024 in user_external_session (#95360)
Some checks are pending
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Auth: Increase name_id and session_id length to 1024 in user_external_session (#95352)

Increase name_id and session_id length to 1024

(cherry picked from commit b8b7c7901c)

Co-authored-by: Misi <mgyongyosi@users.noreply.github.com>
2024-10-24 18:36:43 +03:00
grafana-delivery-bot[bot]
c5d7a954ef [v11.3.x] Alerting: Fix escaping of silence matchers in utf8 mode (#95347)
Some checks are pending
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
Fix escaping of silence matchers in utf8 mode (#95067)
2024-10-24 16:33:15 +03:00
kay delaney
54e5e6c1b5 [v11.3.x] Update scenes to v5.20.4 (#95337)
Update scenes to v5.20.4
2024-10-24 12:57:24 +01:00
grafana-delivery-bot[bot]
c99956285b [v11.3.x] Dashboards: Fixes performance issue expanding a row (#95321)
Dashboards: Fixes performance issue expanding a row  (#95311)

* DashboardScene: Optimize change detection

* Remove arg

* remove console log

(cherry picked from commit 3523289e98)

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2024-10-24 12:23:21 +03:00
grafana-delivery-bot[bot]
9d867a4441 [v11.3.x] Remove doc-validator requirement to run on all pull requests (#95316)
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-10-24 11:38:12 +03:00
grafana-delivery-bot[bot]
a9088a7bbb [v11.3.x] CI: use linux to build msi installers (#95292)
Some checks are pending
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
CI: use linux to build msi installers (#95215)

* Build the MSI installers using Linux and wine

(cherry picked from commit 66c728d26b)

Co-authored-by: Kevin Minehart <5140827+kminehart@users.noreply.github.com>
2024-10-23 14:51:29 -05:00
grafana-delivery-bot[bot]
7cf08ebaf9 [v11.3.x] Prometheus: Fix passing query timeout to upstream queries (#95264)
Prometheus: Fix passing query timeout to upstream queries (#95104)

* remove queryTimeout from constructor

* use queryTimeout for range and instant queries

* remove comment

* remove default query timeout

* fix linting

(cherry picked from commit 78a00d09cd)

Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>
2024-10-23 17:02:18 +02:00
grafana-delivery-bot[bot]
c76d97bb13 [v11.3.x] Azure: Fix duplicated traces in multi-resource trace query (#95247)
Some checks failed
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
publish-technical-documentation-release / sync (push) Has been cancelled
Azure: Fix duplicated traces in multi-resource trace query (#95156)

Use first resource as base resource for query

(cherry picked from commit 8bb7475e4f)

Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
2024-10-23 15:24:33 +03:00
Pepe Cano
f8cb0ccb71 [v11.3.x] Alerting Docs: Update Alert rule and Notification Templating (#95242)
Alerting Docs: Update Alert rule and Notification Templating (#94069)

* Update links to the new location of the Templates intro page

* Set alert rule template structure

* Update the `Template notifications` structure/sidebar

* Move examples to examples pages

* Update menu titles and URL paths

* WIP reference

* added intro to examples.md

* reference page section intros

* examples title

* Template

* Continue Alert Template Reference

* example sections

* Almost finish with Reference page

* weight pages

* WIP - template variables Intro

* Edits Alert rule templates + Differences with notification templates

* examples-draft-2

* how to map annotations to notif templates

* examples v2

* moved example

* Continue Template annotations and labels

* Preview annotation templates

* Complete `Template annotations and labels`

* Update `Differences with notification templates`

* Polish a bit `Differences with notification tempaltes`

* added logic examples to `Examples`

* Finish sharing Template language

* Minor: set `anchor` link

* Minor edit

* Minor edit

* Minor changes

* Template language changes

* Document missing functions for alert rule templates

* 'Examples' v3

* `Examples` v3.1

* `Examples` v3.2

* added context/intro to `Examples`

* added a how to section to `Examples`

* moved legacy info in `Examples`

* added examples, sections in `Examples`

* formatting

* examples v5

* examples v5.1

* Complete update to `Notification template reference`

* Update `$values` description

* moved steps to `index`

* fixed urls

* removed section in `examples`

* added refs

* fixed urls

* refs fix

* blended the use case into the explanation

* Notification template reference: Minor readibility changes

* Edit `$value` in Alert rule template reference

* Edit `Manage notification templates

* links to ref and lang pages

* Minor copy changes

* Edit Template annotation overview + Prepare Template notifications overview

* `Select` vs `Choose`

* Template Overview

* Fix `heading` does not match `title`

* examples v6

* examples v6.1

* Fix spell errors

* Run `prettier --write` to fix md format errors

* examples v7

* examples v7.1

* examples v7.2

* examples v7.4

* examples v7.5

* examples v7.6

* all pretty, no pity

* Update alert rule examples

* Complete `Labels and annotations template examples`

* Minor changes

* Use `.` notation instead of `index` in examples

* rename `extendeddata` to `notificationdata`

* Complete Notification examples

* minor changes

* Set `go` language when displaying template examples

* Revert "minor changes"

This reverts commit f647c55c87.

* Update example and admonition for consistency

* Update docs/sources/alerting/alerting-rules/templates/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/templates/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/templates/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/templates/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/configure-notifications/template-notifications/manage-notification-templates.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/configure-notifications/template-notifications/manage-notification-templates.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/shared/alerts/template-language.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/shared/alerts/template-language.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/configure-notifications/template-notifications/manage-notification-templates.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/templates/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/templates/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/templates/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/templates/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/templates/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/templates/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/configure-notifications/template-notifications/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/templates/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/templates/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/templates/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/templates/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/templates/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/templates/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/templates/language.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/templates/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/templates/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/templates/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/templates/examples.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/templates/examples.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/configure-notifications/template-notifications/examples.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/templates/examples.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/configure-notifications/template-notifications/examples.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/configure-notifications/template-notifications/manage-notification-templates.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/configure-notifications/template-notifications/manage-notification-templates.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/configure-notifications/template-notifications/manage-notification-templates.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/configure-notifications/template-notifications/manage-notification-templates.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/configure-notifications/template-notifications/manage-notification-templates.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* use `add` instead of `enrich`

* fix prettier content errors

* minor copy change

* Specify which Alert properties are exclusive to Grafana-managed alerts

* Use `Monitor` instead of `Meta monitoring`

* Be more detailed about notifation template limitations

---------

Co-authored-by: tonypowa <tonypowa@gmail.com>
Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
(cherry picked from commit 813632dff1)
2024-10-23 13:03:58 +02:00
grafana-delivery-bot[bot]
f702577e83 [v11.3.x] format datasources list with columns (#95234)
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
Co-authored-by: Robby Milo <robbymilo@fastmail.com>
2024-10-23 10:07:21 +01:00
grafana-delivery-bot[bot]
b8c43bcf3d [v11.3.x] Alerting docs: Update Labels and Annotations to detail use cases (#95221)
Alerting docs: Update `Labels and Annotations` to detail use cases (#95213)

* Alerting docs: Update `Labels and Annotations` to detail use cases

* Update docs/sources/alerting/fundamentals/alert-rules/annotation-label.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

---------

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
(cherry picked from commit 8072286daf)

Co-authored-by: Pepe Cano <825430+ppcano@users.noreply.github.com>
2024-10-23 09:07:06 +02:00
grafana-delivery-bot[bot]
d865fa64ce [v11.3.x] Docs: Add what's new video (#95210)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-10-22 16:43:14 -04:00
Kevin Yu
a292f838fe fix changelog (#95208) 2024-10-22 13:09:39 -07:00
github-actions[bot]
50c5d806c1 Release: 11.3.0 (#95196)
* Update changelog

* Update version to 11.3.0

* bump @grafana/plugin-configs from 11.3.0-pre to 11.3.0

* update changelog

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Kevin Yu <kevinwcyu@users.noreply.github.com>
Co-authored-by: Kevin Minehart <kmineh0151@gmail.com>
2024-10-22 12:39:12 -07:00
grafana-delivery-bot[bot]
6d5fa7b7a0 [v11.3.x] Docs: Add Correlations entry to what's new (#95172)
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-10-22 10:58:26 -04:00
grafana-delivery-bot[bot]
035f6dde73 [v11.3.x] Canvas: Fix data links target (#95171)
Canvas: Fix data links target (#95113)

(cherry picked from commit b2e53997e2)

Co-authored-by: Adela Almasan <88068998+adela-almasan@users.noreply.github.com>
2024-10-22 17:54:54 +03:00
grafana-delivery-bot[bot]
494ddad79d [v11.3.x] Azure Monitor: Support metric namespaces fallback (#95155)
Azure Monitor: Support metric namespaces fallback (#94722)

* Update display names

* Update multi-resource types

* Update default metric namespace list

* Initialise namespace list with fallback namespaces

* Add test

* Update test

(cherry picked from commit 986bd2f9f8)

Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
2024-10-22 16:39:56 +03:00
grafana-delivery-bot[bot]
2e81653b68 [v11.3.x] Anonymous User: Adds validator service for anonymous users (#94994)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Anonymous User: Adds validator service for anonymous users (#94700)

(cherry picked from commit 3438196010)

Co-authored-by: lean.dev <34773040+leandro-deveikis@users.noreply.github.com>
2024-10-22 09:26:00 -03:00
grafana-delivery-bot[bot]
6924b9641a [v11.3.x] Alerting: Fix overflow for long receiver names (#95133)
Alerting: Fix overflow for long receiver names (#95064)

(cherry picked from commit 94f5e21493)

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2024-10-22 14:23:38 +02:00
grafana-delivery-bot[bot]
f68938c842 [v11.3.x] DashboardScene: Re-add support for default datasource var (#95138)
DashboardScene: Re-add support for default datasource var (#94806)

re-add support for default datasource var

(cherry picked from commit 96893aef2a)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
2024-10-22 13:52:01 +03:00
grafana-delivery-bot[bot]
c426f12df7 [v11.3.x] DashboardScene: Rerender dashboard links on timerange change (#95140)
DashboardScene: Rerender dashboard links on timerange change (#94570)

* fix

* refactor

* refactor

(cherry picked from commit aaba5a43bd)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
2024-10-22 13:49:07 +03:00
grafana-delivery-bot[bot]
bbc76071b5 [v11.3.x] DashboardScene: Update timerange in datalinks on change (#95137)
DashboardScene: Update timerange in datalinks on change (#94419)

* fix types

* mods

* refactor

* refactor

(cherry picked from commit 516e0cf7e2)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
2024-10-22 13:27:29 +03:00
grafana-delivery-bot[bot]
ca7156d411 [v11.3.x] DashboardScenes: Fix missing query options in library panels (#95132)
DashboardScenes: Fix missing query options in library panels (#94808)

Fix missing query options in library panels

(cherry picked from commit d608668335)

Co-authored-by: Victor Marin <36818606+mdvictor@users.noreply.github.com>
2024-10-22 13:09:16 +03:00
grafana-delivery-bot[bot]
8e7ba6f123 [v11.3.x] Docs note on Cross-account observability permissions for CW datasource (#95125)
Co-authored-by: Jara Suárez de Puga García <jara.suarezdepuga@grafana.com>
2024-10-22 10:07:02 +01:00
grafana-delivery-bot[bot]
6e0e8d0370 [v11.3.x] Loki query editor: update CompletionDataProvider time range when it changes (#95127)
Loki query editor: update CompletionDataProvider time range when it changes (#94905)

* Loki query editor: update CompletionDataProvider time range when it changes

* CompletionDataProvider: update test and add regression

* Formatting

* Completion Data Provider: clear cache when the time range changes

* Completion Data Provider: specifically test for undefined values vs empty string

(cherry picked from commit 89c215a9ff)

Co-authored-by: Matias Chomicki <matyax@gmail.com>
2024-10-22 12:06:54 +03:00
grafana-delivery-bot[bot]
073436f2f8 [v11.3.x] [docs] fix provisioning folder name (#95101)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Co-authored-by: Scott Lepper <scott.lepper@gmail.com>
fix provisioning folder name (#95099)
2024-10-21 23:43:52 +03:00
grafana-delivery-bot[bot]
367c82bd51 [v11.3.x] BarChart: Skip formatting null-valued ticks (#95094)
BarChart: Skip formatting null-valued ticks (#94935)

Co-authored-by: Ihor Yeromin <yeryomin.igor@gmail.com>
(cherry picked from commit 594e9b1b73)

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2024-10-21 22:48:13 +03:00
grafana-delivery-bot[bot]
a2db7105a9 [v11.3.x] Docs: What’s new & Upgrade guide v11.3 (#95088)
Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-10-21 15:20:12 -04:00
grafana-delivery-bot[bot]
bdf41feda9 [v11.3.x] Alerting: Fix remote Alertmanager readiness check path (#95066)
Alerting: Fix remote Alertmanager readiness check path (#95063)

(cherry picked from commit 4f8f82f5f1)

Co-authored-by: Santiago <santiagohernandez.1997@gmail.com>
2024-10-21 18:45:49 +03:00
grafana-delivery-bot[bot]
aa8c58abd0 [v11.3.x] Alerting: Fix templates editing validation (#94963)
Some checks are pending
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
* Alerting: Fix templates editing validation (#94960)

Fix title validation when editing template files

(cherry picked from commit 5548e5976b)

* Adjust tests

---------

Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>
2024-10-21 10:52:10 +02:00
grafana-delivery-bot[bot]
48d083d495 [v11.3.x] Chore: Fix population of details when converting from errutil errors to K8s error (#94998)
Some checks failed
Sync to mirror / trigger_downstream_patch_mirror (push) Has been cancelled
Chore: Fix population of details when converting from errutil errors to K8s error (#94996)

(cherry picked from commit 672d5f92f2)

Co-authored-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com>
2024-10-18 23:11:44 +03:00
grafana-delivery-bot[bot]
e0da40ea8c [v11.3.x] CloudWatch: Interpolate region in log context query (#94990)
Some checks failed
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
publish-technical-documentation-release / sync (push) Has been cancelled
CloudWatch: Interpolate region in log context query (#94930)

CloudWatch: interpolate region in log context query
(cherry picked from commit fd5f351a6f)

Co-authored-by: Isabella Siu <Isabella.siu@grafana.com>
2024-10-18 14:25:21 -04:00
grafana-delivery-bot[bot]
aba5388a42 [v11.3.x] Alerting: Fix time-interval conversion to return bad request if payload is incorrect (#94999)
Alerting: Fix time-interval conversion to return bad request if payload is incorrect (#94995)

(cherry picked from commit 00bb3215cb)

Co-authored-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com>
2024-10-18 20:35:15 +03:00
Isabel Matwawana
48ce1636bd Revert "[v11.3.x] Revert some scenes documentation" (#94984) 2024-10-18 11:42:32 -04:00
Josh Hunt
71e980ee9a bump whatsnew url (#94982) 2024-10-18 18:32:07 +03:00
grafana-delivery-bot[bot]
060846d056 [v11.3.x] Dashboards: Links to explore should respect subpath (#94975)
Dashboards: Links to explore should respect subpath (#94525)

* Links to explore should respect subpath

* Change to using assureBaseUrl

* Change back to normal single quotes

(cherry picked from commit 315778227b)

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
2024-10-18 17:38:26 +03:00
Sam Jewell
df57ba1b70 [v11.3.x] ServerSideExpressions: Disable SQL Expressions to prevent RCE and LFI vulnerability (#94955)
ServerSideExpressions: Disable SQL Expressions to prevent RCE and LFI vulnerability (#94942)

* disable sql expressions

remove duckdb ref

* Run `make update-workspace`

---------

Co-authored-by: Scott Lepper <scott.lepper@gmail.com>
(cherry picked from commit ea71201ddc)
2024-10-18 12:46:53 +01:00
grafana-delivery-bot[bot]
4a800ace30 [v11.3.x] Docs: Update Grafana-Managed Recording Rule docs (#94908)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Docs: Update Grafana-Managed Recording Rule docs (#94895)

* Config ini section

* Extend header

* Drop hysteresis line which doesnt apply to recording rules

* Touch up evaluation behavior section

* Dissolve incorrect/unrelated section

* Update docs/sources/alerting/alerting-rules/create-mimir-loki-managed-recording-rule.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/create-mimir-loki-managed-recording-rule.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/create-mimir-loki-managed-recording-rule.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/create-mimir-loki-managed-recording-rule.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/create-mimir-loki-managed-recording-rule.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/create-mimir-loki-managed-recording-rule.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Run linter

---------

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
(cherry picked from commit be0d8b4f19)

Co-authored-by: Alexander Weaver <weaver.alex.d@gmail.com>
2024-10-17 16:43:29 -05:00
grafana-delivery-bot[bot]
a577031ba9 [v11.3.x] CI: Additional changes for +security versions (#94923)
CI: Additional changes for +security versions (#94854)

* Build: Fix docker manifest create not using correct IMAGE_TAG

* Support publishing security versions of NPM packages

---------

Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
Co-authored-by: Kevin Minehart <kmineh0151@gmail.com>
Co-authored-by: Diego Augusto Molina <diegoaugustomolina@gmail.com>
(cherry picked from commit 8f7352e862)

Co-authored-by: Josh Hunt <joshhunt@users.noreply.github.com>
2024-10-17 17:12:44 -03:00
grafana-delivery-bot[bot]
efeb05386b [v11.3.x] DataLinks: Fix onClick functionality (#94907)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
DataLinks: Fix onClick functionality (#94815)

* fix: add onclick functionality back to DataLinks in VizPanelFooter

---------

Co-authored-by: Adela Almasan <adela.almasan@grafana.com>
Co-authored-by: Matias Chomicki <matyax@gmail.com>
(cherry picked from commit 5fe5e8a5a6)

Co-authored-by: Galen Kistler <109082771+gtk-grafana@users.noreply.github.com>
2024-10-17 20:27:29 +03:00
grafana-delivery-bot[bot]
1ac972f086 [v11.3.x] Revert some scenes documentation (#94903)
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-10-17 17:12:20 +01:00
grafana-delivery-bot[bot]
4590698e10 [v11.3.x] Alerting: Update texts for gm rr in the form (#94886)
Alerting: Update texts for gm rr in the form (#94844)

* Update texts for gm rr in the form

* fix translations

* Fix test

* address review comments

* address review comments - part2

* translations

* update docs for new term: output

(cherry picked from commit 1860737117)

Co-authored-by: Sonia Aguilar <33540275+soniaAguilarPeiron@users.noreply.github.com>
2024-10-17 16:29:16 +02:00
grafana-delivery-bot[bot]
ab368bfb06 [v11.3.x] Alerting: Update docs for grafana recording rules (#94841)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Alerting: Update docs for grafana recording rules (#94811)

* update docs for grafana recording rules

* Update docs/sources/alerting/alerting-rules/create-mimir-loki-managed-recording-rule.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/alerting-rules/create-mimir-loki-managed-recording-rule.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* remove notes

* fix note tag

* update note for grafana-managed feature toggle

* Update docs/sources/alerting/alerting-rules/create-mimir-loki-managed-recording-rule.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

---------

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
(cherry picked from commit f9ba4e3e5d)

Co-authored-by: Sonia Aguilar <33540275+soniaAguilarPeiron@users.noreply.github.com>
2024-10-17 11:14:03 +02:00
grafana-delivery-bot[bot]
489c9db173 [v11.3.x] Geomap: Fix tooltip positioning when screen is scrolled (#94842)
Geomap: Fix tooltip positioning when screen is scrolled (#94827)

* account for y-scrolling when positioning geomap tooltip

* remove config import

(cherry picked from commit 241dca57cf)

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2024-10-17 12:02:13 +03:00
grafana-delivery-bot[bot]
8bbf0a1869 [v11.3.x] Update Pyroscope data source for Exlore Profiles (#94832)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Update Pyroscope data source for Exlore Profiles (#94825)

* Update Pyroscope data source for Exlore Profiles

* Update docs/sources/datasources/pyroscope/query-profile-data.md

* Update docs/sources/datasources/pyroscope/query-profile-data.md

(cherry picked from commit e8f23bb2cf)

Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>
2024-10-16 20:57:07 -04:00
grafana-delivery-bot[bot]
8b8a67fad6 [v11.3.x] [DOC] Add streamingEnabled to Tempo ds docs (#94830)
[DOC] Add streamingEnabled to Tempo ds docs (#94751)

* Add streamingEnabled to Tempo ds docs

* Update docs/sources/datasources/tempo/configure-tempo-data-source.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

---------

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
(cherry picked from commit 17eff37104)

Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>
2024-10-16 16:53:37 -04:00
grafana-delivery-bot[bot]
2e956696a4 [v11.3.x] GCM: Time field naming (#94819)
Some checks are pending
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
GCM: Time field naming (#94548)

* Name time field correctly

* Update tests

* Lint

(cherry picked from commit 7c79f8f7a5)

Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
2024-10-16 18:34:50 +03:00
grafana-delivery-bot[bot]
d58468b60b [v11.3.x] Plugins: Skip install errors if dependency plugin already exists (#94718)
Plugins: Skip install errors if dependency plugin already exists (#94710)

* skip install errors if dependency plugin already exists

* add test

(cherry picked from commit f97f489c2c)

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
2024-10-16 13:13:41 +03:00
Kevin Minehart
d784d370d3 [v11.3.x] CI: Support more version formats in publishing (#94750)
Some checks are pending
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
CI: Support more version formats in publishing (#94575)

* cleanup dead code
* add tests and rewrite publish grafanacom steps to reuse
* add pkg/build tests; don't upload CDN assets on grafana releases

(cherry picked from commit 7a2edd35d5)
2024-10-15 13:57:07 -05:00
grafana-delivery-bot[bot]
d4beddfb0e [v11.3.x] Docs: Update alerting notifications documentation (#94733)
Some checks failed
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
publish-technical-documentation-release / sync (push) Has been cancelled
Docs: Update alerting notifications documentation  (#93944)

* add new permissions and fixed roles

* Apply suggestions from code review

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* address comments

* add actions to complete list

* fmt

---------

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
(cherry picked from commit ced5497ba1)

Co-authored-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com>
2024-10-15 11:20:31 -04:00
grafana-delivery-bot[bot]
ae3419cd79 [v11.3.x] Folders: Correctly show new folder button under root folder (#94713)
Folders: Correctly show new folder button under root folder (#94687)

show new folder button under root folder if nested folders are disabled and user has the right perms

(cherry picked from commit 284c2d6f71)

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2024-10-15 13:05:13 +03:00
grafana-delivery-bot[bot]
65c759c76a [v11.3.x] Fix list indentation to ensure continuous numbering (#94696)
Some checks are pending
publish-technical-documentation-release / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
Fix list indentation to ensure continuous numbering (#94692)
2024-10-14 19:27:48 +01:00
grafana-delivery-bot[bot]
e6475b80c2 [v11.3.x] Alerting: Use advanced options when query params are not transformable (#94670)
Some checks are pending
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Alerting: Use advanced options when query params are not transformable (#94588)

* Use advanced options when query params are not transformable

* Update public/app/features/alerting/unified/components/rule-editor/query-and-alert-condition/QueryAndExpressionsStep.tsx

Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>

---------

Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>
(cherry picked from commit fb5fb76ad1)

Co-authored-by: Sonia Aguilar <33540275+soniaAguilarPeiron@users.noreply.github.com>
2024-10-14 12:16:36 +02:00
grafana-delivery-bot[bot]
749714fe50 [v11.3.x] Create strategies-for-upgrading-grafana (#94635)
Some checks failed
publish-technical-documentation-release / sync (push) Has been cancelled
Sync to mirror / trigger_downstream_patch_mirror (push) Has been cancelled
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
Co-authored-by: Irene Rodriguez <irene.rodriguez@grafana.com>
2024-10-11 17:33:50 +02:00
grafana-delivery-bot[bot]
e1a4fcda48 [v11.3.x] fix missing hyperlink to permissions page in docs (#94630)
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
Co-authored-by: Vishal N <vnaccounts@tutanota.com>
fix missing hyperlink to permissions page in docs (#94077)
2024-10-11 10:40:01 -04:00
grafana-delivery-bot[bot]
9af2af8b9f [v11.3.x] docs: added configure structure and youtube video link (#94629)
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
Co-authored-by: Señor Performo - Leandro Melendez <54183040+srperf@users.noreply.github.com>
2024-10-11 10:30:42 -04:00
Jack Baldry
50de92f873 Revert Sharing documentation changes (#94585)
Fix Sharing page aliases (#94118)"
2024-10-11 14:58:36 +01:00
grafana-delivery-bot[bot]
2a7d8279a2 [v11.3.x] OrgSync: Do not set default Organization for a user to a non-existent Organization (#94613)
OrgSync: Do not set default Organization for a user to a non-existent Organization (#94537)

Do not set default org for a user to a missing org

Co-authored-by: Karl Persson <kalle.persson@grafana.com>
(cherry picked from commit c872cad879)

Co-authored-by: Misi <mgyongyosi@users.noreply.github.com>
2024-10-11 15:44:17 +03:00
grafana-delivery-bot[bot]
f5d29152c9 [v11.3.x] SSO: Fix client side validations for LDAP (#94596)
SSO: Fix client side validations for LDAP (#94561)

* fix client side validations for LDAP

* add translations for new messages

* simplify code in isInvalidField()

(cherry picked from commit 0bd3ad1d5a)

Co-authored-by: Mihai Doarna <mihai.doarna@grafana.com>
2024-10-11 13:04:31 +03:00
grafana-delivery-bot[bot]
c938b751cf [v11.3.x] Alerting: Fix detail view not showing instances nor history tab (#94586)
Alerting: Fix detail view not showing instances nor history tab (#94424)

* Fix detail view not showing instances nor history tab

* small refactor

* Update public/app/features/alerting/unified/hooks/useCombinedRule.ts

Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>

* refactor

---------

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>
(cherry picked from commit 3924751827)

Co-authored-by: Sonia Aguilar <33540275+soniaAguilarPeiron@users.noreply.github.com>
2024-10-11 11:12:17 +03:00
grafana-delivery-bot[bot]
f24f59225d [v11.3.x] Alerting: Fix getSimpleConditionFromExpressions (#94584)
Alerting: Fix getSimpleConditionFromExpressions (#94516)

fix getSimpleConditionFromExpressions

(cherry picked from commit 419598c745)

Co-authored-by: Sonia Aguilar <33540275+soniaAguilarPeiron@users.noreply.github.com>
2024-10-11 11:07:16 +03:00
grafana-delivery-bot[bot]
5f7e46f886 [v11.3.x] Explore metrics: set options directly because of scenes error when options not set (#94571)
Explore metrics: set options directly because of scenes error when options not set (#94284)

* scenes error when options not set

* add all of the options that are updated in onOptionsChange

* add options to all the other places we are building timeseries panels

* Update public/app/features/trails/AutomaticMetricQueries/graph-builders/percentiles.ts

Co-authored-by: Nick Richmond <5732000+NWRichmond@users.noreply.github.com>

* remove activation handlers and unused code

* Update public/app/features/trails/AutomaticMetricQueries/graph-builders/simple.ts

Co-authored-by: Nick Richmond <5732000+NWRichmond@users.noreply.github.com>

* Update public/app/features/trails/AutomaticMetricQueries/graph-builders/percentiles.ts

Co-authored-by: Sven Grossmann <sven.grossmann@grafana.com>

---------

Co-authored-by: Nick Richmond <5732000+NWRichmond@users.noreply.github.com>
Co-authored-by: Sven Grossmann <sven.grossmann@grafana.com>
(cherry picked from commit ce857c2680)

Co-authored-by: Brendan O'Handley <brendan.ohandley@grafana.com>
2024-10-10 20:35:08 +03:00
Scott Lepper
a3764ebeba [Search] fix: add and delete (#94438)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
[search] fix: add and delete from index
2024-10-08 16:17:31 -04:00
Karl Persson
2d0ea60017 ServiceAccounts: Run migration in batches (#94429)
* ServiceAccounts: Run migration in batches
2024-10-08 19:53:23 +02:00
Scott Lepper
c2fb2dcfbe wire up unified search from the ui; add basic search support (#94358)
* wire up search from the ui;  add basic search support
2024-10-08 13:09:56 -04:00
Ieva
8cade5c550 Role mapping: Add new query parameter to docs (#94413)
* small doc addition

* swagger gen

* pr feedback
2024-10-08 17:53:21 +01:00
Ezequiel Victorero
19844220db Playlists: Remove from menu for users without permissions (#94403) 2024-10-08 13:04:18 -03:00
Lucy Chen
e1067b817d ShareDrawer: Export CTA UI tweaks (#94348)
change arrow size
2024-10-08 11:57:13 -04:00
Mihai Doarna
4bbae5eb0a LDAP: Render root CA and client cert as text fields (#94382)
render root CA and client cert as text fields
2024-10-08 18:54:34 +03:00
renovate[bot]
546d1517fa Update dependency @grafana/aws-sdk to v0.5.0 (#94416)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-08 16:37:56 +01:00
Scott Lepper
52b70ca976 Grafana indexing poc - load and watch index (#93843)
* list resources and load into index
* watch for changes and update index
2024-10-08 09:43:23 -04:00
renovate[bot]
0e13719ec6 Update dependency rudder-sdk-js to v2.48.19 2024-10-08 13:27:39 +00:00
Nick Richmond
ff7a96d60e ExploreMetrics: Ensure compatibility with Incremental Querying (#94355)
fix: use unique refs in breakdown panels
2024-10-08 09:15:07 -04:00
Matheus Macabu
96384b5181 CloudMigrations: cover cases where library panel has no folder (#94405) 2024-10-08 15:14:23 +02:00
Haris Rozajac
ee65f89533 Query Library: Enhance user data (#94231)
* Enhance user data

* Remove irrrelevant logic outside of try block

* Encode user uid for url
2024-10-08 07:12:33 -06:00
Piotr Jamróz
c6387854c5 TraceView: Fix icon background after making a copy of an attribute (#94402)
Fix icon color after making a copy
2024-10-08 15:09:06 +02:00
renovate[bot]
f2093c9f05 Update dependency react-dropzone to v14.2.9 2024-10-08 13:01:24 +00:00
Diego Augusto Molina
0cc90f2492 Chore: Add Makefile target to efficiently lint only locally changed Go files (#94228)
* add Makefile target to efficiently lint only locally changed files

* fix xargs usage; only run if Go files changed
2024-10-08 12:47:33 +00:00
Esteban Beltran
84554735b0 Improve levitate detect breaking changes pipeline (#94391)
* Update .github/workflows/detect-breaking-changes-levitate.yml

Co-authored-by: Timur Olzhabayev <timur.olzhabayev@grafana.com>

---------

Co-authored-by: Timur Olzhabayev <timur.olzhabayev@grafana.com>
2024-10-08 15:45:54 +03:00
Andres Martinez Gotor
02f5e1f930 Add Sandbox settings feature flag (#94388) 2024-10-08 13:38:54 +01:00
renovate[bot]
5b7ae2bb93 Update dependency rc-slider to v11.1.7
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-10-08 12:30:04 +00:00
renovate[bot]
8fbd8eabec Update dependency @types/node to v20.16.11 2024-10-08 11:48:39 +00:00
kay delaney
1d244ae1ec Chore: Rewrite TraceView css using object styles (#87621) 2024-10-08 14:39:22 +03:00
Gabriel MABILLE
b90e09e966 Fix: Deduplicate OrgID in SA logins (#94378)
* Fix: Deduplicate OrgID in SA logins
2024-10-08 13:35:08 +02:00
renovate[bot]
33326c5a9e Update dependency @types/diff to v5.2.3 2024-10-08 11:22:41 +00:00
renovate[bot]
1e3009e665 Update dependency @reduxjs/toolkit to v2.2.8 2024-10-08 10:45:43 +00:00
renovate[bot]
7977aa6a84 Update dependency @grafana/scenes to v5.18.3 2024-10-08 09:55:34 +00:00
Mihai Doarna
501f1bc7a9 LDAP: Render bind password as a secret input field (#94376)
render bind password as a secret input field
2024-10-08 12:54:16 +03:00
renovate[bot]
6190499f03 Update dependency moment-timezone to v0.5.46 (#94331)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-08 10:04:06 +01:00
Misi
bd7850853e Auth: Attach external session info to Grafana session (#93849)
* initial from poc changes

* wip

* Remove public external session service

* Update swagger

* Fix merge

* Cleanup

* Add backgroud service for cleanup

* Add auth_module to user_external_session

* Add tests for token revocation functions

* Add secret migration capabilities for user_external_session fields

* Cleanup, refactor to address feedback

* Fix test
2024-10-08 11:03:29 +02:00
Jo
9eea0e99fc Chore: Use UIDs as identifiers for teams frontend (#94345)
* Team frontend now uses UIDs as identifiers. Safe to revert
2024-10-08 09:48:35 +02:00
Jo
945dd052b1 Fix: Ensure SA migrations doesn't hit migrated SAs if rerun (#94347)
* ensure mig doesn't hit migrated SAs if rerun

* Fix small issue with the test

---------

Co-authored-by: gamab <gabriel.mabille@grafana.com>
2024-10-08 09:45:14 +02:00
Victor Marin
f70fefc67c DashboardScene: Fix dependencies on field overrides (#94335)
fix deps on field overrides
2024-10-08 08:25:42 +03:00
Victor Marin
a63a271f88 DashboardScene: Fix row actions removing behavior on second update (#94333)
fix row actions removing behavior on second update
2024-10-08 08:25:29 +03:00
Yuri Tseretyan
b8df574aba Alerting: Support optimistic concurrency in notification policies service (#93932)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
* update notification policy provisioning service to support optimistic concurrency
* rewrite tests and include concurrency tests
2024-10-08 00:09:02 +03:00
Jev Forsberg
0e8fa1f5f8 CI: Remove redundant FE and BE tests from release pipeline (#94173)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Has been cancelled
baldm0mma/remove_tests/ remove fe and be tests
2024-10-07 13:55:17 -06:00
Yuri Tseretyan
4c1cb79069 Alerting: Add access control to receiver status API (#94287) 2024-10-07 15:21:29 -04:00
Ezequiel Victorero
cc40211f71 Chore: Update api docs (#92616) 2024-10-07 14:49:58 -03:00
Drew Slobodnjak
3e583ff423 VizRepeater: Prevent opposite scrollbar (#94230)
* VizRepeater: Prevent opposite scrollbar

* Update packages/grafana-ui/src/components/VizRepeater/VizRepeater.tsx

Co-authored-by: Adela Almasan <88068998+adela-almasan@users.noreply.github.com>

* Update packages/grafana-ui/src/components/VizRepeater/VizRepeater.tsx

Co-authored-by: Adela Almasan <88068998+adela-almasan@users.noreply.github.com>

---------

Co-authored-by: Adela Almasan <88068998+adela-almasan@users.noreply.github.com>
2024-10-07 10:05:09 -07:00
grafana-pr-automation[bot]
45eb292a74 I18n: Download translations from Crowdin (#94343) 2024-10-07 17:38:59 +01:00
Brendan O'Handley
2113c13e6e Explore metrics: Add bookmarks empty state (#94291)
* add empty state component for bookmarks

* translations

* remove image, update text

* all text
2024-10-07 10:59:06 -05:00
renovate[bot]
1545a58d3c Update dependency @grafana/scenes to v5.18.2 (#94321)
* Update dependency @grafana/scenes to v5.18.2

* fix e2e test

* update e2e test

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2024-10-07 16:04:20 +01:00
Arati R.
ea5cf7c51f Unified Storage /Folders: Allow Unified Storage subfolders creation (#94327)
* Add parents field to folder DTO
* Allow subfolder creation when folder flag is enabled
* Update UnstructuredToLegacyFolder
* Include parents field when creating folder
2024-10-07 16:48:56 +02:00
renovate[bot]
0d67b5a6e9 Update dependency jest-fail-on-console to v3.3.1 2024-10-07 14:48:24 +00:00
Ieva
d7aca7d0fe Role mapping: Add group_mapping_uid column to user_role table (#93810)
* add group_mapping_uid column to user_role table

* add group mapping UID to user role struct
2024-10-07 15:47:16 +01:00
jackyin
63bdbb67fc SubMenu: Fix expanding sub menu items on touch devices (#93208)
* click more in mobile phone

* use stopPropagation stop event

* delete log

* delete inspect click and add stopPropagation

* bug fix

* fix unit tests

* fix e2e tests

* fix old-arch tests

---------

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2024-10-07 15:22:18 +01:00
grafana-pr-automation[bot]
1a3365d99b I18n: Download translations from Crowdin (#94317)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-10-07 17:19:19 +03:00
renovate[bot]
72aa6d6e28 Update dependency i18next to v23.15.2 2024-10-07 14:08:19 +00:00
Brendan O'Handley
aefe08f738 Explore metrics: Add limit for adhoc filters options in providers functions (#94036)
* add limit for adhoc filters in providers functions

* add comments to describe function

* return early if filtersVariable is not an instance of AdHocFiltersVariable

* update function comments

* add tests to confirm the providers are limited to 10000
2024-10-07 09:06:50 -05:00
Lars Stegman
f9361bf5bf PageHeader: Fill title container width (#94213)
page-header title: flex 1
2024-10-07 15:41:18 +02:00
Juan Cabanas
e2735dd9c8 ShareInternally: Remove menu item description (#94326)
Share internally menu item description removed
2024-10-07 10:36:36 -03:00
renovate[bot]
65fc40385a Update dependency eslint-plugin-react to v7.37.1 2024-10-07 13:33:33 +00:00
renovate[bot]
32c55555cb Update dependency @types/node to v20.16.10 2024-10-07 13:00:31 +00:00
Misi
0539ccf10d Auth: Fix redirection when auto_login is enabled (#94311)
* Fix for SAML auto login

* Fix for OAuth auto login
2024-10-07 14:59:00 +02:00
Matheus Macabu
6bd2f9f3ea CloudMigrations: remove duplicated import on test (#94322) 2024-10-07 15:32:52 +03:00
renovate[bot]
45835f7ea2 Update dependency @types/lodash to v4.17.10
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
publish-technical-documentation-next / sync (push) Has been cancelled
2024-10-07 10:54:58 +00:00
Matheus Macabu
712314e832 CloudMigrations: create onPremToCloudMigrationsAlerts feature toggle in experimental stage (#94257)
CloudMigrations: create onPremToCloudMigrationsAlerts feature toggle in experimental stage

This feature toggle requires the `onPremToCloudMigrations` toggle to be enabled in order to work.

Given migration of Alerts (and child resources) is more critical, this flag was separated from
the main one.
2024-10-07 12:53:24 +02:00
Matheus Macabu
e89aef57cb CloudMigrations: wire ngalert to cloud migration service and add slicesext.Map helper (#94254)
* CloudMigrations: add slicesext.Map function to simplify dto creation

* CloudMigrations: wire ngalert to cloud migration service
2024-10-07 12:53:14 +02:00
Matheus Macabu
9af095d730 CloudMigrations: Add data types for alerts resources (#94251) 2024-10-07 12:52:31 +02:00
Dana Axinte
d88be2819d CloudMigrations: Store parent folder name in cloud_migration_resource table (#94009)
* use name in fe

* store parent folder name in local db

* clean up

* tiny test

* trial react

* rename to parent name

* go lint

* generate api and ts

* go tests

* rearrange

* clean

* update with suggestions from josh

* make library elements work

* updates from comments

* global migration types

* parent name for alter table
2024-10-07 11:35:08 +01:00
Arati R.
5a9bd1d1cf K8s/Folders: Fix folder create payload (#94273)
* Fix createdBy and updatedBy
* Fix refreshing permission cache
* Update created time
* Fix user identifier parsing
2024-10-07 13:32:25 +03:00
Ashley Harrison
d04dcb3da0 SingleTopNav: Fix tab order for docked menu (#94306)
fix tab order for docked menu when singleTopNav is enabled
2024-10-07 11:16:30 +01:00
renovate[bot]
0c8433c9e5 Update dependency @react-types/overlays to v3.8.10 2024-10-07 10:10:31 +00:00
renovate[bot]
b65fc7c74e Update dependency @grafana/scenes to v5.18.1 2024-10-07 10:09:35 +00:00
maicon
261be0facd UniStore: Evaluate Folder DTO attributes (#93968)
* UniStore: Evaluate Folder DTO attributes

* Handle AccessControl

* Reduce the number of parameters to newToFolderDto

* Detach Metadata helpers from HTTPServer

* Add tests

---------

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
2024-10-07 12:08:16 +02:00
renovate[bot]
5a7d6c104e Update dependency @grafana/faro-web-tracing to v1.10.2 2024-10-07 09:33:22 +00:00
Roberto Jiménez Sánchez
19c77eaae1 CloudMigrations: Fix traceability & HTTP Client initialisation (#94141)
* Add traceability to Migration Assistant feature

* Fix some compilation errors

* Fix lint issues

* Use async context

* Add trace for LibraryElements
2024-10-07 11:31:45 +02:00
Alex Khomenko
9680722b78 Dashboards: Switch to useParams hook (#94060)
* Update DashboardScenePage

* Update SoloPanelPage

* Update DashboardPage

* Cleanup

* Switch to useLocation

* Do not use location from history
2024-10-07 12:11:57 +03:00
Matheus Macabu
4bc7a35f56 UnifiedStorage: fix watcher test (#94301) 2024-10-07 12:07:48 +03:00
kay delaney
4569872048 Chore: Add tests for HelpWizard (#94271) 2024-10-07 10:02:01 +01:00
Jo
acd13e05ef Teams: Support team UIDs in APIs (#94011)
* support team UIDs in APIs

* unify middleware logic and add team tests

* add UID test to resource permissions

* remove unused middleware
2024-10-07 10:18:24 +02:00
Tim Mulqueen
413548806d add zendesk to enterprise ds list (#91751) 2024-10-07 11:10:20 +03:00
Georges Chaudy
03f55e5288 Unistore : Ensure Watch works in HA mode (#94120)
* Revert "Revert "Unistore : Ensure Watch works in HA mode." (#94097)"

This reverts commit 7c3fc2f261.

* make previous_resource_version nullable

* handle nil case
2024-10-07 10:01:53 +02:00
Alex Khomenko
3bda6c2c0a Routing: Use location from hooks (#94148)
* Update GrafanaRoute

* Update Silences

* Update PublicDashboardPage

* Cleanup

* Switch to the location from locationService

* Move location to render
2024-10-07 09:31:13 +03:00
Alex Khomenko
d730c66579 Routing: Remove useRouteMatch hook (#94152)
* Update useSilenceNavData.ts

* Update MuteTimings

* Update AppRootPage.tsx

* Cleanup props

* Remove empty file
2024-10-07 08:21:44 +03:00
Brandon
fbad76007d Alerting: Limit and clean up old alert rules versions (#89754)
Some checks failed
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
golangci-lint / lint-go (push) Has been cancelled
Sync to mirror / trigger_downstream_patch_mirror (push) Has been cancelled
/ Alerting Swagger spec generation cron job (push) Has been cancelled
2024-10-05 00:31:21 +03:00
Drew Slobodnjak
4ec75bcc60 Transformations: Show filter for single query (#94238) 2024-10-04 14:17:46 -07:00
Matthew Jacobson
099055e8a5 Alerting: Verify receiver permission read on rule create/update (#94286)
* Alerting: Verify receiver permission read on rule create/update
2024-10-04 23:52:38 +03:00
Yuri Tseretyan
27c7e33217 Alerting: Update permissions to reciever and template test API (#94282)
* add action "alert.notifications.receivers:test" to receiver creator

* update API permissions to accept new granular actions
2024-10-04 15:52:44 -04:00
renovate[bot]
03ff8a5cdb Update dependency @react-types/menu to v3.9.12 2024-10-04 19:06:30 +00:00
Drew Slobodnjak
d0abb08f31 Limit: Prevent negative limit (#94237) 2024-10-04 12:05:16 -07:00
renovate[bot]
797da67467 Update dependency @lezer/common to v1.2.2
Some checks failed
golangci-lint / lint-go (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Has been cancelled
publish-technical-documentation-next / sync (push) Has been cancelled
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
2024-10-04 17:27:16 +00:00
renovate[bot]
a18482da38 Update dependency @grafana/scenes to v5.18.0 (#94281)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-04 20:26:11 +03:00
Ivan Ortega Alba
d09017f7a2 Dashboard Scene: Sync variable state with TemplateSrv result (#93327)
* Generate options for variables through TemplateSrv

* Add refresh when object changes

* Remove unnecesary static function

* Extract logic

* Add extra test case when variable changes and refresh event is triggered

* bring back old logic, query options should not live in the dashboard json

* add missing change

* Add support to keep variable options in query

* tests

* move refreshEvent to DashboardVariableDependency

---------

Co-authored-by: alexandra vargas <alexa1866@gmail.com>
Co-authored-by: Victor Marin <victor.marin@grafana.com>
2024-10-04 20:19:18 +03:00
Misi
2b320b0f9e Auth: Only apply redirection if the user is signed in (session storage redirection) (#94279)
Fix: do not redirect if the user is not signed in
2024-10-04 20:06:06 +03:00
renovate[bot]
6344eeac3b Update dependency @grafana/faro-web-sdk to v1.10.2 2024-10-04 16:52:13 +00:00
Torkel Ödegaard
938bc9c2cc DashboardScene: Update matcher options immutably (#93960) 2024-10-04 17:39:35 +02:00
Haris Rozajac
84cee7cab6 Query Library: Vertical space between rows; change "Run query" button color (#94177) 2024-10-04 09:38:23 -06:00
Gabriel MABILLE
fe3ada4a6c Revert "AuthN: Managed plugin Service Accounts general availability" (#94270)
Revert "AuthN: Managed plugin Service Accounts general availability (#93384)"

This reverts commit 943525391e.
2024-10-04 17:28:24 +02:00
renovate[bot]
b70650e098 Update dependency @grafana/faro-web-sdk to v1.10.2 2024-10-04 15:24:27 +00:00
Mihai Doarna
82a5913dfa SSO: Fix secrets migration for LDAP in SSO settings (#94252)
fix secrets migration for LDAP in SSO settings
2024-10-04 18:18:53 +03:00
Ieva
6eeef432de RBAC: Add dash and folder action sets where they are missing (#92832)
* add dash and folder action sets where they are missing

* remove an empty line, try to make linting pass
2024-10-04 16:03:04 +01:00
renovate[bot]
77e1f222a0 Update babel monorepo to v7.25.7 (#94262)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-04 15:58:12 +01:00
Josh Hunt
c7c66ccf4a BrowseDashboards: Limit the type for folder parents to just a few fields (#94244)
* BrowseDashboards: Limit the type for folder parents to just title, uid, and url

* export type, use in buildNavModel
2024-10-04 17:32:50 +03:00
Ashley Harrison
e43e430e6a SingleTopNav: Move scopes selector to second bar (#94186)
move scopes selector to second bar
2024-10-04 15:31:28 +01:00
renovate[bot]
6ed3868921 Update dependency @emotion/css to v11.13.4 2024-10-04 14:22:51 +00:00
grafana-pr-automation[bot]
89b292f514 I18n: Download translations from Crowdin (#94261)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-10-04 17:21:48 +03:00
Ashley Harrison
40ad52fdbc SingleTopNav: Handle for non-scenes dashboards (#94198)
handle singleTopNav for non-scenes dashboards
2024-10-04 15:11:32 +01:00
Sergej-Vlasov
f32fe9a846 PanelEditor: add data provider when switching from non data panel (#94220)
* add data provider when switching from non data panel

* handle adding and cleaning up data provider in panel editor on panel switch

* add data provider check sin panel  editor tests
2024-10-04 15:05:52 +01:00
renovate[bot]
b2d930e079 Update dependency @tanstack/react-virtual to v3.10.8 2024-10-04 14:02:27 +00:00
kay delaney
b5821ef473 PanelSearch: Add support for rows & repeats (#94243)
* PanelSearch: Add support for rows & repeats

* Show message if there are no matches
2024-10-04 15:01:01 +01:00
renovate[bot]
94444319ec Update React Aria 2024-10-04 13:59:26 +00:00
Sonia Aguilar
4c27b2c59d Alerting: Fix default value for input in simple condition (#94248)
fix default value for input
2024-10-04 16:57:29 +03:00
renovate[bot]
93b8243da7 Update dependency @grafana/experimental to v2 (#93919)
* Update dependency @grafana/experimental to v2

* add data-testid to old save button so it works properly in e2e test

* fix azure monitor e2e tests

* use raw selectors

* remove .only

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2024-10-04 14:21:10 +01:00
Jo
544b5f905c Anonymous: Fix anonymous cache ignoring device limit evaluation (#94218)
* ensure cache contains the evaluation result for device limit

* add device limit errors and warnings

* fix lint
2024-10-04 15:20:55 +02:00
renovate[bot]
6dfe9aef95 Update dependency @grafana/scenes to v5.17.0 (#94249)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-04 16:10:01 +03:00
Giuseppe Guerra
0db65d229e Plugins: Add Subresource Integrity checks (#93024)
* Plugins: Pass hashes for SRI to frontend

* Add SRI hashes to frontendsettings DTOs

* Add docstring

* TestSriHashes

* Fix typo

* Changed SriHashes to ModuleHash

* update loader_test compareOpts

* update ModuleHash error message

* Add TestModuleHash/no_module.js

* Add omitEmpty to moduleHash

* Add ModuleHash to api/plugins/${pluginId}/settings

* moved ModuleHash field

* feat(plugins): add moduleHash to bootData and plugin types

* feat(plugins): if moduleHash is available apply it to systemjs importmap

* Calculate ModuleHash for CDN provisioned plugins

* Add ModuleHash tests for TestCalculate

* adjust test case name

* removed .envrc

* Fix signature verification failing for internal plugins

* fix tests

* Add pluginsFilesystemSriChecks feature togglemk

* renamed FilesystemSriChecksEnabled

* refactor(plugin_loader): prefer extending type declaration over ts-error

* added a couple more tests

* Removed unused features

* Removed unused argument from signature.DefaultCalculator call

* Removed unused argument from bootstrap.DefaultConstructFunc

* Moved ModuleHash to pluginassets service

* update docstring

* lint

* Removed cdn dependency from manifest.Signature

* add tests

* fix extra parameters in tests

* "fix" tests

* removed outdated test

* removed unused cdn dependency in signature.DefaultCalculator

* reduce diff

* Cache returned values

* Add support for deeply nested plugins (more than 1 hierarchy level)

* simplify cache usage

* refactor TestService_ModuleHash_Cache

* removed unused testdata

* re-generate feature toggles

* use version for module hash cache

* Renamed feature toggle to pluginsSriChecks and use it for both cdn and filesystem

* Removed app/types/system-integrity.d.ts

* re-generate feature toggles

* re-generate feature toggles

* feat(plugins): put systemjs integrity hash behind feature flag

---------

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2024-10-04 14:55:09 +02:00
Misi
153036be2e Docs: Add docs for configuring kc_idp_hint (#94226)
Add docs for configuring kc_idp_hint
2024-10-04 14:32:26 +02:00
Diego Augusto Molina
7d32d5eff4 Unistore: Reuse MySQL and Postgres Grafana core config instead of the object (#94223)
* Reuse MySQL and Postgres Grafana config instead of the object

- Only reuse the Grafana DB object for SQLite. Support for SQLite will be added in a different PR
- Fail when reusing the Grafana DB object if it is using DB instrumentation
- In the case that we have to reuse a Grafana DB with its instrumentation, fail with an error that describes a workaround
- Add regression tests to reproduce incident 2144

* remove temp file

* fix linter

* fix linter x2

* fix linter x3
2024-10-04 12:07:20 +00:00
Mihai Doarna
a82f102878 Auth: Promote ssoSettingsLDAP flag to public preview (#94242)
* promote ssoSettingsLDAP flag to public preview

* add generated file
2024-10-04 14:59:42 +03:00
Aaron Godin
458fc69616 IAM: Add test for AddDataSource managed permissions (#94113)
Add test for AddDataSource managed permissions and fix control flow issues
2024-10-04 06:35:25 -05:00
Ihor Yeromin
9801b92c3d Table: Fix table cell text jumping on hover (#93913)
fix(table): table cell text jumping on hover
2024-10-04 13:20:15 +02:00
linoman
e37b43117b SSO LDAP: Implement documentation (#94215)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
* Add documentation for LDAP UI

* Add hyphen to string

* Polish writing

---------

Co-authored-by: Irene Rodriguez <irene.rodriguez@grafana.com>
2024-10-04 12:33:47 +02:00
Alexander Zobnin
5d724c2482 Zanzana: Initial dashboard search (#93093)
* Zanzana: Search in a background and compare results

* refactor

* Search with check

* instrument zanzana client

* add single_read option

* refactor

* refactor move check into separate function

* Fix tests

* refactor

* refactor getFindDashboardsFn

* add resource type to span attributes

* run ListObjects concurrently

* Use list and search in less cases

* adjust metrics buckets

* refactor: move Check and ListObjects to AccessControl implementation

* Revert "Fix tests"

This reverts commit b0c2f072a2.

* refactor: use own types for Check and ListObjects inside accesscontrol package

* Fix search scenario with low limit and empty query string

* more accurate search with checks

* revert

* fix linter

* Revert "revert"

This reverts commit ee5f14eea8.

* add search errors metric

* fix query performance under some conditions

* simplify check strategy

* fix pagination

* refactor findDashboardsZanzanaList

* Iterate over multiple pages while making check request

* refactor listUserResources

* avoid unnecessary db call

* remove unused zclient

* Add notes for SkipAccessControlFilter

* use more accurate check loop

* always use check for search with provided UIDs

* rename single_read to zanzana_only_evaluation

* refactor

* update go workspace

* fix linter

* don't use deprecated fields

* refactor

* fail if no org specified

* refactor

* initial integration tests

* Fix tests

* fix linter errors

* fix linter

* Fix tests

* review suggestions

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

* fix limit

* refactor

* refactor tests

* fix db config in tests

* fix migrator (postgres)

---------

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2024-10-04 12:27:10 +02:00
Arati R.
f403bc57d5 K8s/Folders: Clear permissions cache on create (#94214)
* Clear user permissions cache after folder creation
* Use k8s client only for create
2024-10-04 11:26:36 +02:00
Sven Grossmann
a766b378d0 Explore Logs: Preinstall for onprem Grafana instances (#94221) 2024-10-04 11:15:29 +02:00
grafana-pr-automation[bot]
788ef7fec3 I18n: Download translations from Crowdin (#94210)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-10-04 10:00:30 +01:00
Ashley Harrison
d4bb8122cb SingleTopNav: Tweaks for mobile responsiveness (#94188)
tweaks for mobile responsiveness
2024-10-04 09:54:17 +01:00
Karl Persson
c7ca2bfcf5 ServiceAccounts: Remove permissions to service account when it is deleted (#93877)
* Service account: clean up permissions related to service accounts when deleted

* Add migration for deleting orphaned service account permissions

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2024-10-04 09:01:09 +02:00
Gabriel MABILLE
943525391e AuthN: Managed plugin Service Accounts general availability (#93384)
External Service Accounts: General availability
2024-10-04 08:48:38 +02:00
Levente Balogh
6096f46774 Plugin Extensions: Require meta-data to be defined in plugin.json during development mode (#93429)
* feat: add extensions to the backend plugin model

* feat: update the frontend plugin types

* feat(pluginContext): return a `null` if there is no context found

This will be necessary to understand if a certain hook is running inside a plugin context or not.

* feat: add utility functions for checking extension configs

* tests: fix failing tests due to the type updates

* feat(AddedComponentsRegistry): validate plugin meta-info

* feat(AddedLinksRegistry): validate  meta-info

* feat(ExposedComponentsRegistry): validate meta-info

* feat(usePluginComponent): add meta-info validation

* feat(usePluginComponents): add meta-info validation

* feat(usePluginLinks): add meta-info validation

* fix: only validate meta-info in registries if dev mode is enabled

* tests: add unit tests for the restrictions functionality

* tests: fix Go tests

* fix(tests): revert accidental changes

* fix: run goimports

* fix: api tests

* add nested app so that meta data can bested e2e tested

* refactor(types): extract the ExtensionInfo into a separate type

* refactor(extensions/utils): use Array.prototype.some() instead of .find()

* refactor(usePluginLinks): update warning message

* feat(usePluginExtensions()): validate plugin meta-info

* Wip

* fix(e2e): E2E tests for extensions

* fix(extensions): allow multiple "/" slashes in the extension point id

* fix(extensions/validators): stop validating the plugin id pattern

---------

Co-authored-by: Erik Sundell <erik.sundell87@gmail.com>
2024-10-04 08:41:26 +02:00
Nathan Marrs
7188c13d22 ElasticSearch: Add keywords to plugin.json (#94174)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Has been cancelled
* add keywords

* add additional keywords
2024-10-04 01:52:19 +03:00
Haris Rozajac
2ea662854a QueryLibrary: Don't use description when generating name (#94236) 2024-10-03 16:24:39 -06:00
Todd Treece
a4d919c157 Chore: Update k8s.io dependencies to v0.31.1 (#93696) 2024-10-03 15:50:15 -04:00
Kyle Cunningham
a38d6e57c2 Get help: Make quality of life updates (#93594)
* Get help updates

* Remove beta badge

* Further cleanups

* Some updates

* Fix tests

* Prettier

* Update betterer results

* i18n

* i18n extraction

* Bettererest
2024-10-03 13:38:18 -05:00
Stephanie Hingtgen
4623a6471b SQLStore: Fix parseTime check (#94175)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
Update `make docs` procedure / main (push) Has been cancelled
2024-10-03 08:58:33 -05:00
Misi
ee8bb63d2d Auth: Replace jmespath/go-jmespath with jmespath-community/go-jmespath (#94203)
Replace jmespath/go-jmespath with jmespath-community/go-jmespath
2024-10-03 15:43:15 +02:00
Laura Benz
f92ef0e126 RestoreDashboards: Add link to dashboards browse view (#94000)
* feat: add button

* refactor: clean up

* feat: add tracking

* refactor: change button copy

* refactor: add payload to tracking

* refactor: add subURL

* refactor: user permissions

* refactor: group conditions

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

---------

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2024-10-03 15:13:29 +02:00
Gilles De Mey
4224d05934 Alerting: Hoist routes for mute timings (#94201) 2024-10-03 14:41:11 +02:00
Ashley Harrison
87fd36aecf SingleTopNav: Add chevron and tooltip to menu trigger (#94199)
add chevron and tooltip to menu trigger
2024-10-03 13:20:32 +01:00
Joey
eb60773073 Tempo: Add deprecation notice for Aggregate By (#94050)
Add deprecation notice
2024-10-03 12:13:56 +01:00
Joao Silva
c04027919b Bookmarks: Turn feature toggle on by default (#94194) 2024-10-03 13:45:31 +03:00
Joey
75640a6ad3 Tempo: Update lezer-traceql version (#94197)
Update lezer-traceql version
2024-10-03 11:40:38 +01:00
grafana-pr-automation[bot]
cda3791d49 I18n: Download translations from Crowdin (#94196)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-10-03 11:22:17 +01:00
Arati R.
a42caa7a61 K8s/Folders: Fix tests for creating folders (#94192)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
* Add feature toggle grafanaAPIServerTestingWithExperimentalAPIs
* Customise registration of FolderAPIBuilder for tests and fix tests
2024-10-03 12:11:40 +02:00
Matheus Macabu
1635a3cd67 CloudMigrations: Add support for migration of Library Elements (Panels) resources (#93898)
* CloudMigrations: create snapshots of Library Elements

* CloudMigrations: render library element resource in resources table

* CloudMigrations: create newtype with necessary fields for library element creation
2024-10-03 11:54:54 +02:00
Ashley Harrison
dd7f45011d SingleTopNav: Add toolbar to Page and replace usage of AppChromeUpdate (#94022)
* add page-level toolbar for actions

* handle explore

* fix panel edit sizing

* remove comments

* remove TOGGLE_BUTTON_ID

* undo alerting changes

* use fixed position header

* feature toggle Page changes

* add page context for alerting use cases

* simplify

* prettier...
2024-10-03 09:52:01 +01:00
Tobias Skarhed
e48d166c3e New Select: width auto sets width based on content (#93800)
* Add inline prop for AutoSizeInput

* Rename to autoSize

* Use conditional props and width auto

* remove variable

* Remove 100% max width
2024-10-03 11:45:22 +03:00
Alexander Zobnin
bd1741653d Annotations: Fix composite store read (#94158)
* Annotations: Fix composite store read

* Add test

* check error
2024-10-03 09:14:06 +02:00
Andres Martinez Gotor
4c4f7a3331 Chore: Restore permissions used to create plugins dir (#94139) 2024-10-03 09:09:54 +02:00
grafana-pr-automation[bot]
bcee44db5f I18n: Download translations from Crowdin (#94168)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-10-03 07:27:27 +03:00
Yuri Tseretyan
3fcc259703 Move CVE-2024-8118 to correct versions (#94167)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
2024-10-02 17:24:46 -04:00
Isabella Siu
4be5ccaece Cloudwatch: Update grafana-aws-sdk (#94155)
Cloudwatch: update grafana-aws-sdk
2024-10-02 14:22:41 -04:00
Haris Rozajac
eb7573828e Query Library: Search and filter (#94038)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
* Search by query text, pagination

* Support default filtering by active datasource; filter by datasource name; improve table display

* Cleanup

* Fix update and delete url paths

* Fix test

* Use Stack, remove uneccessary function wrapper

* Notify when something is wrong with a row, add interaction tracking

* i18n
2024-10-02 11:33:14 -06:00
grafana-delivery-bot[bot]
c38eab33f5 Release: update changelog for 11.2.2 (#94114)
* Update changelog

* add CVE to 11.2.1

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com>
2024-10-02 12:46:10 -04:00
Timur Olzhabayev
0f5eaac6df Chore: Updating codeowners for plugins cli commands (#94136)
Updating codeowners for plugins cli commands
2024-10-02 18:35:25 +02:00
Misi
d3d5735098 Auth; Fix shourt url redirect when useSessionStorageForRedirection is enabled (#94163)
Fix shourt url redirect
2024-10-02 18:25:47 +02:00
Isabel Matwawana
fb3b13b567 Docs: Geomap visualization refactor (#94101)
Co-authored-by: Irene Rodriguez <irene.rodriguez@grafana.com>
2024-10-02 11:34:22 -04:00
Laura Benz
a0542e7307 RestoreDashboards: Fix restoring to 'Dashboards' (#94086)
* pairing WIP

* refactor: clean up

---------

Co-authored-by: joshhunt <josh@trtr.co>
2024-10-02 17:15:31 +02:00
Konrad Lalik
9fff736549 Alerting: Support k8s templates API (#92112)
Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
Co-authored-by: Sonia Aguilar <soniaaguilarpeiron@gmail.com>
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2024-10-02 17:14:54 +02:00
Sonia Aguilar
fe656229c3 Alerting: Pluralize error tag (#94157) 2024-10-02 18:14:35 +03:00
Marcus Efraimsson
e22b510cd8 API Server: Fix extracting jaeger remote trace from incoming request (#93998) 2024-10-02 17:07:31 +02:00
Karl Persson
d75a9b6aeb User: Pass name to list users to filter out the correct one (#94153)
Pass name to list users to filter out the correct one
2024-10-02 17:02:32 +02:00
Gilles De Mey
41b175e7ae Alerting: Use useProduceNewAlertmanagerConfiguration for contact points (#88456) 2024-10-02 17:56:35 +03:00
Isabel Matwawana
02f608ed05 Docs: Fix Sharing page aliases (#94118)
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-10-02 10:21:43 -04:00
Michael Derynck
97f480386f Alerting: Update OnCall integration url (#93407)
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2024-10-02 16:13:55 +02:00
Kyle Brandt
a1556fded2 Prometheus: Suggestions - log parse errors and continue (#94143)
* Prometheus: Suggestions - log parse errors and continue
2024-10-02 13:29:45 +01:00
Sonia Aguilar
e80ef522bb Alerting: Hide query name when using simplified mode in the alert rule (#93779)
* Hide query name when using simplified mode in the alert rule

* rename hideName to hideRefId
2024-10-02 13:55:48 +02:00
kay delaney
dae492f6c8 PanelSearchLayout: Support repeat panels (#94140) 2024-10-02 12:27:27 +01:00
Diego Augusto Molina
658c79e1d5 Chore: fix initialization data race in infra usagestats (#94070)
fix initialization data race in usagestats
2024-10-02 07:30:44 -03:00
grafana-pr-automation[bot]
a7497ae846 I18n: Download translations from Crowdin (#94138)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-10-02 11:19:31 +01:00
Ashley Harrison
cf61ab3da2 SingleTopNav: Flip collapse arrows for better alignment (#94081)
flip megamenu arrows for better alignment
2024-10-02 11:08:34 +01:00
Misi
ddbbf8df4b Auth: Fix redirection in case of ERR_TOKEN_REVOKED (#94137)
Fix redirection in case of token revoked error
2024-10-02 12:08:25 +02:00
renovate[bot]
573ba9be18 Update dependency @grafana/scenes to v5.16.2 (#94082)
* Update dependency @grafana/scenes to v5.16.2

* fix e2e test

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2024-10-02 10:58:24 +01:00
Erik Sundell
d6d51f0316 Plugin E2E: Add more api tests (#94073)
* add tests

* bump plugin-e2e

* use range

* update lock file
2024-10-02 11:55:04 +02:00
linoman
763163603c SSO LDAP: Bug-bashing follow-up changes (#94093)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
* fix html encoding rendering

* Redirect to providers page

* Fix cert isEmpty

* Rework input fields into multiselect

* add disable button

* Rework MultiSelect design

* Remove prompt modal
2024-10-02 11:42:23 +02:00
Alexander Zobnin
3f6a64cc57 Navigation: Don't show "add new connection" if user has no permissions (#94058)
Navigation: Don't show "add new connection" if user does not have permissions
2024-10-02 10:02:28 +02:00
David Garcia
dd8c50ec12 FIX: typo in generic oauth org mapping json (#94117) 2024-10-02 07:34:23 +00:00
Alex Khomenko
f55f7f2634 Routing: Replace Redirect component with Navigate (#94072)
* Routing: Replace Redirect with Navigate

* Use replace state

* Update routes.tsx

* Fix test
2024-10-02 09:44:18 +03:00
Brendan O'Handley
28d9cc7310 Explore metrics: Fix bug that turns off otel experience when selecting otel variables (#94106)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
fix bug that turns of otel experience when selecting otel variables
2024-10-01 15:09:39 -05:00
Kevin Minehart
26c3ed89a3 CI: upgrade grabpl v3.0.53 (#94112)
* upgrade grabpl to v3.0.53

* upgrade grabpl to v3.0.53
2024-10-01 21:03:38 +01:00
grafana-delivery-bot[bot]
518afa5a24 Release: update changelog for 11.1.7 (#94102)
* Update changelog
* Add CVE

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com>
2024-10-01 15:26:27 -04:00
Yuri Tseretyan
2d89a27741 Update CHANGELOG.md (#94103)
Updates Changelog to include CVE to 10.3.11 and 10.4.10 versions
2024-10-01 15:03:34 -04:00
Georges Chaudy
7c3fc2f261 Revert "Unistore : Ensure Watch works in HA mode." (#94097)
Revert "Unistore : Ensure Watch works in HA mode. (#93428)"

This reverts commit 0a26c9e9ae.
2024-10-01 18:45:47 +00:00
Yuri Tseretyan
78290301f4 Alerting: Update GettableRuleGroupConfig and PostableRuleGroupConfig with missing fields supported by Prometheus (#94030) 2024-10-01 14:17:57 -04:00
grafana-delivery-bot[bot]
aa225a4450 Release: update changelog for 11.0.6 (#94098)
* Update changelog

* add alerting cve fix note

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Josh Hunt <joshhunt@users.noreply.github.com>
2024-10-01 17:57:14 +00:00
grafana-delivery-bot[bot]
74fa0af1c2 Release: update changelog for 10.4.10 (#94095)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Update changelog

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-10-01 17:29:32 +01:00
grafana-delivery-bot[bot]
e0294b0b83 Release: update changelog for 10.3.11 (#94090)
Update changelog

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-10-01 16:57:59 +01:00
Bogdan Matei
a87df0528b Prometheus: Interpolate vars in adhoc filters request (#94087)
* Interpolate vars in adhoc filters request

* interpolate variables on BE

---------

Co-authored-by: Kyle Brandt <kyle@grafana.com>
2024-10-01 18:33:06 +03:00
brendamuir
cbf8e7e679 Alerting docs: update that test functionality only for G Alertmanager (#94064)
* Alerting docs: update that test functionality only for G Alertmanager

* ran prettier

* fixed alphabetical order

* indentation

* format

* all pretty, no pity

---------

Co-authored-by: tonypowa <tonypowa@gmail.com>
2024-10-01 17:28:26 +02:00
kay delaney
1b82595251 UI/AutoSizeInput: Fixes issue where controlledValue being null caused crash (#94078) 2024-10-01 16:02:26 +01:00
grafana-pr-automation[bot]
a9095b1dd1 I18n: Download translations from Crowdin (#94076) 2024-10-01 15:27:28 +01:00
Matthew Jacobson
f39c5ed9f7 Alerting: Improve Amazon SNS documentation (#93862)
* Alerting: Improve Amazon SNS documentation
2024-10-01 09:43:58 -04:00
Alex Khomenko
586c95654d Routing: Update more components using props.match to use hooks (#93918)
* RuleViewed: Get params from hook

* ProviderConfigPage: Use hooks for redux logic

* Update NewDashboardWithDS

* Update StorageFolderPage

* Update StoragePage

* Cleanup

* Update PublicDashboardPage

* Update RuleEditor

* Update BrowseFolderAlertingPage

* Update BrowseFolderLibraryPanelsPage

* Update SoloPanelPage

* Fix test

* Add useParams mocks

* Update ServiceAccountPage

* Simplify mocks

* Update SignupInvited

* Update Playlist pages

* Update AdminEditOrgPage

* Update UserAdminPage

* Update Silences

* Update BrowseDashboardsPage

* Update GrafanaModifyExport

* Update AppRootPage

* Remove useParams mock

* Update PublicDashboardsPages

* Cleanup

* Update PublicDashboardPage.test

* Cleanup

* Update PublicDashboardScenePage.test.tsx

* Update imports

* Revert AppRootPage changes

* Add back AppRootPage changes
2024-10-01 16:29:11 +03:00
Laura Benz
bc3e1df5e3 RestoreDashboards: Improve tracking (#93934)
feat: add tracking in DeleteModal
2024-10-01 15:27:25 +02:00
Laura Benz
6a30240f58 RestoreDashboards: Fix 'Dashboards' typo in folder picker (#94046)
fix: typo
2024-10-01 15:25:04 +02:00
Alexa V
5cc11bd1a1 Dashboard Scene: Improve Angular experience (#92847)
In Dashboard Scene: 

* Display a warning in the panel header when rendering an angular panel
* Display a warning in the dashboard when rendering one or more angular panels
* Display a button to migrate in the dashboard banner
* Display a button to migrate in the panel editor
* Display a button to "Edit options" when it is an Angular panel, to open the panel JSON inspector to be able to edit the options
* Add tests

---------

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2024-10-01 15:02:13 +02:00
Juan Cabanas
6c91b65aca ShareButton: Split copy link button and dropdown (#94020) 2024-10-01 09:46:32 -03:00
grafana-pr-automation[bot]
dc31bbb555 I18n: Download translations from Crowdin (#94065)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-10-01 14:24:52 +02:00
Matheus Macabu
821bb235b3 CloudMigrations: document and re-generate api for syncing (#94063)
* CloudMigrations: document frontend open-api generator steps

* CloudMigrations: re-run api generation
2024-10-01 14:09:42 +02:00
Arati R.
e399fe6d09 Folders: Set folder creation permission as part of legacy create (#94040)
* Add folder store to dashboard permissions
* Include folder store in annotation scope resolver
* Add folder store when initialising library elements
* Include folder store in search v2 service initialisation
* Include folder store in GetInheritedScopes
* Add folder store to folder permissions provider
* Include cfg, folder permissions in folder service
* Move setting of folder permissions for folder service create method
2024-10-01 14:03:02 +02:00
Kyle Brandt
2a73b89374 Prometheus: Add resource for suggestions that include scopes/adhoc filters (#94001)
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: Bogdan Matei <bogdan.matei@grafana.com>
2024-10-01 07:17:59 -04:00
Alex Khomenko
a20ebbc8f8 Routing: Replace useHistory hook (#94061)
* Update ConfigureIRM

* Update Browse
2024-10-01 14:11:58 +03:00
Tim Levett
8de1047f65 Change from Apps to "More Apps" (#93454)
* Change the label used for additional app links from apps to more apps so it doesn't conflict with applications, which is application observability, not the other bucket

* update to more apps

* more in german is mehr

* fix case, update translations correctly

* revert changes to de

* fix be tests

---------

Co-authored-by: joshhunt <josh@trtr.co>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2024-10-01 11:31:31 +01:00
Alex Khomenko
95d379368a Announcement banner: Enable feature toggle by default (#94041)
* Announcement banner: Enable by default

* Update feature stage
2024-10-01 11:23:21 +01:00
Pepe Cano
38ad0d3ebf Alerting docs: relocate Intro>Notifications>Templates (#94057)
* Alerting docs: relocate `Intro>Notifications>Templates`

* Rename to `Templates`
2024-10-01 12:08:47 +02:00
Ashley Harrison
a8b94fe203 SingleTopNav: Move org switcher into Megamenu header (#94053)
move org switcher into megamenu header
2024-10-01 10:55:48 +01:00
Bogdan Matei
137da12c99 Fix panel search (#94043) 2024-10-01 12:45:31 +03:00
renovate[bot]
8338e92a70 Update dependency sass-loader to v16 (#94006)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-01 10:30:32 +01:00
Alexander Zobnin
9144e3b44a Navigation: Fix empty admin menu (#94024) 2024-10-01 11:28:33 +02:00
Robert Goltz
299fe3e5b1 Chore: bump module github.com/rs/cors from v1.10.1 to v1.11.1 (#93363)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Has been cancelled
* Chore: Update module github.com/rs/cors to v1.11.0

* Fix: rs/cors to v1.11.1 to benefit from fix regarding support for multiple Access-Control-Request-Headers field, e.g. API Gateway

* update go.sum

---------

Co-authored-by: Jo <me@jguer.space>
2024-10-01 10:59:23 +02:00
ismail simsek
f8fd45892d Chore: Fix legend changing when using incremental querying (#93529)
* rename variables

* fix setting legend

* yarn prettier:write

* only update displayNameFromDS
2024-10-01 10:58:08 +02:00
Sergej-Vlasov
d75fee5207 DataTrail: Remove newFiltersUI feature toggle usage from explore metrics (#93693)
remove newFiltersUI feature toggle usage from explore metrics
2024-10-01 09:45:16 +01:00
Dana Axinte
1a31abe254 CloudMigrations: Limit frontend query to get latest snapshots (#93639)
* latest param to endpoint and adapt frontend query

* change to sort param

* api

* remove description
2024-10-01 09:28:25 +01:00
grafana-pr-automation[bot]
8b6cbae96b I18n: Download translations from Crowdin (#94032)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-10-01 06:22:27 +01:00
Michael Mandrus
1c648fd010 Chore: Fix flaky cloud migration test (#94035)
* attempt to fix flaky test

* remove skip from test
2024-10-01 03:24:47 +01:00
Yuri Tseretyan
0c1aafd643 Alerting: skip flaky test TestBroadcastAndHandleMessages (#94039)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
2024-09-30 18:50:55 -04:00
Alexander Weaver
393faa8732 Alerting: Move rule evaluation status logic out of prometheus API and into scheduler (#89141)
* Add health fields to rules and an aggregator method to the scheduler

* Move health, last error, and last eval time in together to minimize state processing

* Wire up a readonly scheduler to prom api

* Extract to exported function

* Use health in api_prometheus and fix up tests

* Rename health struct to status

* Fix tests one more time

* Several new tests

* Handle inactive rules

* Push state mapping into state manager

* rename to StatusReader

* Rectify cyclo complexity rebase

* Convert existing package local status implementation to models one

* fix tests

* undo RuleDefs rename
2024-09-30 16:52:49 -05:00
owensmallwood
6a3eb276ef Grafana Indexing PoC: Adds feature flag and gRPC endpoint (#93356)
* adds Filter gRPC and make protobuf

* adds route for querying the filter gRPC

* wires up Filter gRPC call

* [WIP] index from start

* renames gRPC endpoint to "Search"

* adds /apis/search route into k8s routes. Hacky for now.

* updates readme - wrong casing

* adds feature toggle for unified storage search

* hides US search behind feature flag. Clean up print statements.

* removes indexer - will be added in another PR

* Search: Add API Builder

* adds required method

* implementing UpdateAPIGroupInfo (WIP)

* adds groupversion

* commenting out for now

* remove unneeded code from experimenting and update register.go to match interface required

* namespaces search route

---------

Co-authored-by: leonorfmartins <leonorfmartins@gmail.com>
Co-authored-by: Todd Treece <todd.treece@grafana.com>
2024-09-30 13:46:14 -06:00
Sonia Aguilar
cebcb38df2 Alerting: Style nits for the simple query mode (#93930)
* Style nits for the simple query mode

* update translations

* update text

* update translations

* update disable word to deactivate

* update preview text when not advanced options

* update text

* update text
2024-09-30 19:47:16 +01:00
dependabot[bot]
52f208d3ac Bump github.com/beevik/etree from 1.2.0 to 1.4.1 (#90707)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
Bumps [github.com/beevik/etree](https://github.com/beevik/etree) from 1.2.0 to 1.4.1.
- [Release notes](https://github.com/beevik/etree/releases)
- [Changelog](https://github.com/beevik/etree/blob/main/RELEASE_NOTES.md)
- [Commits](https://github.com/beevik/etree/compare/v1.2.0...v1.4.1)

---
updated-dependencies:
- dependency-name: github.com/beevik/etree
  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>
Co-authored-by: Mihaly Gyongyosi <mgyongyosi@users.noreply.github.com>
2024-09-30 17:51:41 +01:00
Santiago
aa77023008 Alerting: Fix panics when attempting to create an Alertmanager after failing (#94023) 2024-09-30 13:50:35 -03:00
Santiago
80611b381c Alerting: Decrypt secure settings when testing receivers in the remote Alertmanager (#93864)
* Alerting: Decrypt secure settings when testing receivers in the remote Alertmanager

* go work sync

* make update-workspace

* point to latest main in grafana/alerting

* unit test

* import definitions only once
2024-09-30 13:28:30 -03:00
grafana-pr-automation[bot]
fcbaf188c2 I18n: Download translations from Crowdin (#94013)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-09-30 17:19:54 +01:00
Matheus Macabu
7bb3fe3da1 CloudMigrations: Remove unused code from sync migration approach (#94016) 2024-09-30 17:54:12 +02:00
Steven Dungan
362b5a1c22 Docs - direction param for Loki in Explore (#91905)
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-09-30 16:46:21 +01:00
Alexa V
8b215d60ac Dashboard Scene: Add sceneGraph missing dependency (#94014)
Add sceneGraph missing dependency
2024-09-30 16:25:58 +01:00
Esteban Beltran
a1cedb4160 Auto triager: Update labels for dashboards squad (#93989) 2024-09-30 17:05:01 +02:00
Torkel Ödegaard
0c22aac7f0 Dashboards: Add support for systemPanelFilterVar and systemDynamicRowSizeVar variables in scenes (#93670)
Co-authored-by: kay delaney <kay@grafana.com>
2024-09-30 15:46:43 +01:00
brendamuir
bb41ff267b Alerting docs: updates to default and advanced options (#93999)
* Alerting docs: updates to default and advanced options

* feedback sonia
2024-09-30 16:41:44 +02:00
Marcus Efraimsson
b7a7f2bd62 Plugins: Use handler middleware from the SDK (#93445)
updates sdk to v0.251.0
2024-09-30 16:33:15 +02:00
Pepe Cano
54faa541c3 Alerting docs: Move the Condition operators to the Classic condition section (#93997)
Alerting docs: Move the `Condition operators` to the Classic conditions section
2024-09-30 16:23:37 +02:00
Joao Silva
b937b70a46 Internationalization: Restore some plurals text (#94002) 2024-09-30 15:05:16 +01:00
grafana-pr-automation[bot]
ae05e4422d I18n: Download translations from Crowdin (#93983)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-09-30 15:00:20 +01:00
Joao Silva
a45662bf2d Revert "Restore Dashboards: Add e2e tests (again) (#93214)" (#94003) 2024-09-30 14:26:16 +01:00
Bruno
6f92fd64ce Cloud migrations: add more context to errors (#93814)
* Cloud migrations: add more context to errors

* calls to assert.ErrorIs was passing arguments in the wrong order
2024-09-30 09:57:25 -03:00
Kristina
ddbf0a05af Correlations: Update docs to include information on external correlation type (#93772)
Change docs to reflect different correlation types
2024-09-30 07:43:45 -05:00
Georges Chaudy
0a26c9e9ae Unistore : Ensure Watch works in HA mode. (#93428)
* Replace Watch with WatchNext

* remove watchset

* fix previous page and closing the channel

* Remove the broadcaster cache to prevent dupplicated events

* add watch bookmark

* add watch bookmark

* cleanup comments

* disable the tests for bookmarks for now

* Ensure we send previosu events

* lint

* re-introduce the cache

* load from cache

* disabling legacy test

* disabling legacy test

* Update pkg/storage/unified/resource/server.go

Co-authored-by: Diego Augusto Molina <diegoaugustomolina@gmail.com>

* Could not read previous events

* add proper migration

* Add previous_resource_version to both history and resource

* First event should have an RV of 2 and not 1

* Test both storage backends

* fix the inital RV for the sql backend

* ensure graceful stop of the stream decoder

* gocyclo

---------

Co-authored-by: Diego Augusto Molina <diegoaugustomolina@gmail.com>
2024-09-30 13:14:07 +02:00
Ronald McCollam
e1146120f4 Update MySQL example dashboard (#93853)
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-09-30 11:56:12 +01:00
Ronald McCollam
673b98cf10 Add PostgreSQL example dashboard link (#93854)
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-09-30 11:56:02 +01:00
Torkel Ödegaard
b17e256a3c DashboardScene: Fixes url issue with subpath when exiting edit mode (#93962) 2024-09-30 12:19:47 +02:00
Torkel Ödegaard
1c14c85b97 Dashboards: Fixes view & edit keyboard shortcuts when grafana is behind a subpath (#93955)
DashboardScene: Fixes view & edit keyboard shortcuts when grafana is behind a subpath
2024-09-30 12:19:24 +02:00
antonio
e6c962e37c docs>tutorial:improve set up section (#93988)
* docs>tutorial:improve set up section

* removed section

* simplified content/fixed link
2024-09-30 12:05:39 +02:00
Ivan Ortega Alba
7bca69849f Dashboards: Enable scenes by default (#93818)
* Mark Scenes feature toggles as GA

* Move old arch e2e to a new folder

* Run E2E on scenes by default

* Upgrade e2e-selectors to ensure the tests in Playwright works
2024-09-30 10:49:02 +01:00
Joao Silva
42f1fcaf2c Restore Dashboards: Add e2e tests (again) (#93214) 2024-09-30 10:44:15 +01:00
Pepe Cano
405887eebf Alerting Docs: Update the introduction to Templates (#93935)
* Intro/Templates: update Intro and Template annotations sections

* Template labels section + adjustements

* Template notifications

* Use diagram for `meta_image`
2024-09-30 11:31:18 +02:00
antonio
66b881ae2f tutorials: alerting > evaluation (#93981) 2024-09-30 11:30:55 +02:00
Tom Ratcliffe
af82dfa95d Alerting/Chore: Fix TimeRangeInput not working across multiple months (#93622) 2024-09-30 10:26:07 +01:00
Sonia Aguilar
fc93d6f795 Alerting: Update texts in annotations step (#93977)
* Update texts in annotations step

* add translations
2024-09-30 09:57:09 +01:00
grafana-pr-automation[bot]
ef06724a2d I18n: Download translations from Crowdin (#93910)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-09-30 09:32:50 +01:00
Arati R.
ed75aea21d Folders: Export folder store implementation (#93897)
* Export folder store implementation

* Rename folder store

* Add folder store as a parameter to folder service

* Add folder store to dash service implementation

* Fix folder store comments
2024-09-30 10:28:47 +02:00
Erik Sundell
daf9273cd1 E2E: Build test plugins before running the tests (#93979)
build test plugins before starting server
2024-09-30 10:21:14 +02:00
Tom Ratcliffe
0b2478859a Alerting: Allow linking to silence form with __alert_rule_uid__ value preset (#93526) 2024-09-30 09:20:53 +01:00
Tom Ratcliffe
e4698d9c52 Alerting: Fix eval interval not being saved when creating a new group (#93821) 2024-09-30 09:19:01 +01:00
Jack Westbrook
1aed1d8017 Chore: Bump webpack for e2e test plugins (#93831)
chore(e2e-plugins): bump version of webpack to silence dependabot
2024-09-30 10:06:54 +02:00
Dai Nguyen
8b3615b576 Update Image Render Dependencies (#93959) 2024-09-30 09:58:52 +02:00
Ryan Crutchfield
369a8a2b5f Docs: Add org mapping feature to generic OAuth (#91365)
* Doc fix - Add org mapping feature to generic OAuth

https://grafana.com/docs/grafana/latest/setup-grafana/configure-security/configure-authentication/generic-oauth/#org-roles-mapping-example

* Reviewer correction

Added org mapping for all OAuth providers with the exception of GCOM
2024-09-30 09:56:55 +02:00
Dai Nguyen
fb9e12c106 Update Okta SAML attributes documentation (#93966)
Co-authored-by: Irene Rodriguez <irene.rodriguez@grafana.com>
2024-09-30 07:35:33 +00:00
jackyin
e23ba32722 Transformations: Fix crash in Config from query results (#93427)
Some checks failed
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Sync to mirror / trigger_downstream_patch_mirror (push) Has been cancelled
/ Alerting Swagger spec generation cron job (push) Has been cancelled
Run dashboard scenes e2e / dashboard-scenes-e2e (push) Has been cancelled
2024-09-28 09:04:40 -05:00
Adela Almasan
47b51326cc VizTooltip: Update datalinks styling (#93950)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
golangci-lint / lint-go (push) Has been cancelled
2024-09-28 05:33:10 +01:00
Adela Almasan
f9f85131a9 FieldConfig: Add support for Actions (#92874)
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2024-09-27 23:12:37 -05:00
Leon Sorokin
165ca3b4e8 Chore: uPlot v1.6.31 (#93952) 2024-09-27 23:11:05 -05:00
Yuri Tseretyan
84c079d93f Alerting: Add time intervals fixed roles (#93942)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Has been cancelled
publish-technical-documentation-next / sync (push) Has been cancelled
add time intervals role
2024-09-27 16:12:25 -04:00
Brendan O'Handley
54ada3fc47 Explore metrics: Fix bug when switching from OTel enabled Prometheus DS to non OTel PRometheus DS (#93941) 2024-09-27 15:03:37 -05:00
Isabella Siu
76406d65cd ElasticSearch: Fix errorsource in newInstanceSettings (#93859) 2024-09-27 15:40:35 -04:00
Alexander Weaver
c2799b4901 Alerting: Fix incorrect permission on POST external rule groups endpoint [CVE-2024-8118] (#93940)
Fix endpoint permission on rule write endpoint
2024-09-27 14:23:21 -05:00
Tom Ratcliffe
fc51ec70ba Alerting: Add manage permissions UI logic for Contact Points (#92885)
* Add showPolicies prop

* Add manage permissions component for easier reuse within alerting

* Add method for checking whether to show access control within alerting

* Remove accidental console.log from main

* Tweak styling for contact point width and add manage permissions drawer

* Improve typing for access control type response

* Add basic test for manage permissions on contact points list

* Only show manage permissions if grafana AM and alertingApiServer is enabled

* Update i18n

* Add test utils for turning features on and back off

* Add access control handlers

* Update tests with new util

* Pass AM in and add tests

* Receiver OSS resource permissions

There is a complication that is not fully addressed: Viewer defaults to read:*
and Editor defaults to read+write+delete:*

This is different to other resource permissions where non-admin are not granted
any global permissions and instead access is handled solely by resource-specific
permissions that are populated on create and removed on delete.

This allows them to easily remove permission to view or edit a single resource
from basic roles.

The reason this is tricky here is that we have multiple APIs that can
create/delete receivers: config api, provisioning api, and k8s receivers api.
Config api in particular is not well-equipped to determine when creates/deletes
are happening and thus ensuring that the proper resource-specific permissions
are created/deleted is finicky.

We would also have to create a migration to populate resource-specific
permissions for all current receivers. This migration would need to be reset so
it can run again if the flag is disabled.

* Add access control permissions

* Pass in contact point ID to receivers form

* Temporarily remove access control check for contact points

* Include access control metadata in k8s receiver List & Get

GET: Always included.
LIST: Included by adding a label selector with value `grafana.com/accessControl`

* Include new permissions for contact points navbar

* Fix receiver creator fixed role to not give global read

* Include in-use metadata in k8s receiver List & Get

GET: Always included.
LIST: Included by adding a label selector with value `grafana.com/inUse`

* Add receiver creator permission to receiver writer

* Add receiver creator permission to navbar

* Always allow listing receivers, don't return 403

* Remove receiver read precondition from receiver create

Otherwise, Creator role will not be able to create their first receiver

* Update routes permissions

* Add further support for RBAC in contact points

* Update routes permissions

* Update contact points header logic

* Back out test feature toggle refactor

Not working atm, not sure why

* Tidy up imports

* Update mock permissions

* Revert more test changes

* Update i18n

* Sync inuse metadata pr

* Add back canAdmin permissions after main merge

* Split out check for policies navtree item

* Tidy up utils and imports and fix rules in use

* Fix contact point tests and act warnings

* Add missing ReceiverPermissionAdmin after merge conflict

* Move contact points permissions

* Only show contact points filter when permissions are correct

* Move to constants

* Fallback to empty array and remove labelSelectors (not needed)

* Allow `toAbility` to take multiple actions

* Show builtin alertmanager if contact points permission

* Add empty state and hide templates if missing permissions

* Translations

* Tidy up mock data

* Fix tests and templates permission

* Update message for unused contact points

* Don't return 403 when user lists receivers and has access to none

* Fix receiver create not adding empty uid permissions

* Move SetDefaultPermissions to ReceiverPermissionService

* Have SetDefaultPermissions use uid from string

Fixes circular dependency

* Add FakeReceiverPermissionsService and fix test wiring

* Implement resource permission handling in provisioning API and renames

Create: Sets to default permissions
Delete: Removes permissions
Update: If receiver name is modified and the new name doesn't exist, it copies
the permissions from the old receiver to the newly created one. If old receiver
is now empty, it removes the old permissions as well.

* Split contact point permissions checks for read/modify

* Generalise getting annotation values from k8s entities

* Proxy RouteDeleteAlertingConfig through MultiOrgAlertmanager

* Cleanup permissions on config api reset and restore

* Cleanup permissions on config api POST

note this is still not available with feature flag enabled

* Gate the permission manager behind FF until initial migration is added

* Sync changes from config api PR

* Switch to named export

* Revert unnecessary changes

* Revert Filter auth change and implement in k8s api only

* Don't allow new scoped permissions to give access without FF

Prevents complications around mixed support for the scoped permissions causing
oddities in the UI.

* Fix integration tests to account for list permission change

* Move to `permissions` file

* Add additional tests for contact points

* Fix redirect for viewer on edit page

* Combine alerting test utils and move to new file location

* Allow new permissions to access provisioning export paths with FF

* Always allow exporting if its grafana flavoured

* Fix logic for showing auto generated policies

* Fix delete logic for contact point only referenced by a rule

* Suppress warning message when renaming a contact point

* Clear team and role perm cache on receiver rename

Prevents temporarily broken UI permissions after rename when a user's source of
elevated permissions comes from a cached team or basic role permission.

* Debug log failed cache clear on CopyPermissions

---------

Co-authored-by: Matt Jacobson <matthew.jacobson@grafana.com>
2024-09-27 19:56:32 +01:00
Yuri Tseretyan
86faeae6d2 Alerting: Update GetTemplates to return sorted list of templates (#93933) 2024-09-27 18:49:37 +01:00
Sven Grossmann
157ded7c3f Tempo: Create trace to logs links with traces in structured metadata (#93923) 2024-09-27 17:11:09 +01:00
Timothee
f3ba16d3b7 Tidying up the Grafana setup documentation (#93860) 2024-09-27 15:57:38 +00:00
Bruno
8f66b7fdb0 Cloud migrations: disable flaky test (#93921)
* Cloud migrations: disable flaky test

* Update pkg/services/cloudmigration/cloudmigrationimpl/xorm_store_test.go

Co-authored-by: Kevin Minehart <5140827+kminehart@users.noreply.github.com>

---------

Co-authored-by: Kevin Minehart <5140827+kminehart@users.noreply.github.com>
2024-09-27 16:36:08 +01:00
Ihor Yeromin
d5e35c4b78 Legend: Render legend threshold colors (#92838)
* feat(barchart): render legend threshold and value mapping colors

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2024-09-27 17:02:03 +02:00
Mark Visser
c46736f490 Adjust Grafana setup docs (#93894)
* Fix duplicate command and code format

* Minor adjustment

* add bash to code line 

added bash to a code line

* run prettier

---------

Co-authored-by: Irene Rodriguez <irene.rodriguez@grafana.com>
2024-09-27 15:00:37 +00:00
renovate[bot]
0401fa1652 Update dependency @faker-js/faker to v9 (#93917)
Some checks failed
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-27 15:35:15 +01:00
brendamuir
ff5e6da358 Alerting docs: adds simple mode for query section (#93909)
* Alerting docs: adds simple mode for query section

* prettier and add steps section

* delete space

* feedback from sonia

* prettier
2024-09-27 16:22:34 +02:00
Ashley Harrison
bc6752a51c SingleTopNav: Add "Grafana" header to MegaMenu (#93798)
* add "Grafana" header to MegaMenu

* add truncation for really long custom app titles

* revert padding change since paddingLeft will handle it
2024-09-27 15:20:45 +01:00
renovate[bot]
0e4c90dd87 Update emotion monorepo (#93914)
* Update emotion monorepo

* add @emotion/serialize package + update unit test

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2024-09-27 15:16:12 +01:00
xiyu95
ce8c42ab35 chore: enforce the validationMessageHorizontalOverflow for InlineField (#93858)
chore: enforce the validationMessageHorizontalOverflow prop for inlineField
2024-09-27 07:01:18 -07:00
Karl Persson
0160f4f72c RBAC: Add legacy authorization checks to service accounts (#93753)
* Extract a helper funtion to perform list with authorization checks

* Add k8s verb to utils package

* Construct default mapping when no custom mapping is passed

* Configure authorization checks for service accounts

* Fix helper and add filtering to service accounts
2024-09-27 15:53:11 +02:00
renovate[bot]
7710f1c3cf Update dependency rollup to v4.22.5 2024-09-27 13:36:59 +00:00
renovate[bot]
e5d0877af7 Update dependency knip to v5.30.6 2024-09-27 13:13:07 +00:00
Torkel Ödegaard
1941ae21d7 DashboardScene: Refactor body property to be layout manager interface (#93738)
* Began layout refactor

* fixing tests

* Progress

* Progress

* Progress

* Progress

* Progress

* Progress

* finally no errors

* Remove unused interface

* Remove unused interface

* fixed tests

* Update

* Update

* Fixes to keyboard shortcuts and solo route

* fix lint issues
2024-09-27 15:11:28 +02:00
Misi
7e94d05d39 Auth: Fix token rotation redirect when session storage redirect is enabled (#93906)
Fix token rotation redirect when session storage redirect is enabled
2024-09-27 14:57:46 +02:00
renovate[bot]
598179227c Update dependency yaml to v2.5.1 (#93899)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-27 13:44:00 +01:00
Alex Khomenko
5b53b37634 Routing: Update components using props.match to use hooks (#93792)
* RuleViewed: Get params from hook

* ProviderConfigPage: Use hooks for redux logic

* Update NewDashboardWithDS

* Update StorageFolderPage

* Update StoragePage

* Cleanup

* Update PublicDashboardPage

* Update RuleEditor

* Update BrowseFolderAlertingPage

* Update BrowseFolderLibraryPanelsPage

* Update SoloPanelPage

* Fix test

* Add useParams mocks

* Update ServiceAccountPage

* Simplify mocks

* Cleanup

* Reuse types for path params

* Remove mock for router compat in test

* Switch to element

---------

Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
2024-09-27 15:39:29 +03:00
grafana-pr-automation[bot]
9fc4436418 I18n: Download translations from Crowdin (#93904)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-09-27 13:28:37 +01:00
Konrad Lalik
db42af20ca Alerting: Prometheus primary mode for the alert list page (#92975)
* Lazy loading of mimir groups

* Refactor rule statuses

* Use prometheus endpoint to populate namespace and group dropdowns

* Add a feature toggle

* Use lazy loading ruler rules if the feature toggle enabled

* Remove unnecessary props form dynamic table

* Remove query from hash calculation

* Conditionally load ns and group autocompletions from Prom or Ruler APIs

* Fix prometheus dto labels property type

* Add a new suggestions hook which provides autocomplete options for the alert rule form

* Improve delete status handling

* Add waiting for Prometheus endpoint consistency after update submission

* Get rule definition from ruler or prometheus endpoint in useCombinedRule

* Add Prometheus consistency check. Fix view page redirects

* Remove rules reload after rule creation, remove statuses from Prom primary mode

* Add waiting for Prometheus consistency on delete rule action

* Add groups list rendering improvements

* Add memo to useAbilities

* Fix GMA consistency check, fix GMA statuses

* defer filered rules rendering

* Update failing tests

* Update locales

* Add rule-id tests

* Remove unused action

* update loading styles

* Fix unrelated test

* Add a new object for reading alerting feature toggles, address minor review issues

* Improve consistency check

* update i18n

* Improve rule form redirects

* Refactor feature toggle handling

* Update docs/sources/setup-grafana/configure-grafana/feature-toggles/index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update public/app/features/alerting/unified/components/rule-viewer/RuleViewer.tsx

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Fix prettier issues

* Fix i18n

* Fix the feature toggle description

* Fix rule updates, fix ruler-based suggestions, wait for deletion for GMA rules

* Fix rename

* Remove unused code, improve copy

* Update i18n

* Fix url redirect when serving from subpath

---------

Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2024-09-27 14:27:16 +02:00
Matheus Macabu
fcb17379ea LibraryElements: add fake service implementation and replace its usage in Dashboard API (#93783)
* LibraryElements: add fake service implementation

* Dashboards: replace fake LibraryElements implementation
2024-09-27 14:22:29 +02:00
Roman Pertl
3437c8be7f Docs: grafana image renderer instructions custom cert in container (#93646)
Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>
2024-09-27 13:00:57 +01:00
Sam Jewell
51d73249b2 Docs: Update Usage insights logs docs- Scope (#93425)
Update Usage insights logs docs: Scope

As far as I can tell, in https://github.com/grafana/grafana/pull/59931
we started to record Usage Insights events for Explore queries.
And in https://github.com/grafana/grafana/pull/78097 we further improved
our implementation of that logging.

This documentation should have been updated back then to match. So I'm
updating it now.
2024-09-27 12:33:24 +01:00
Jack Westbrook
012d62782c Fix: Prevent import errors caused by Rollup 4 (#93903)
fix(packages): prevent import errors by injecting exports.esmodule and check for default prop
2024-09-27 12:18:52 +01:00
Artur Wierzbicki
35f5ef007c Chore: update ownership of grafana live FE code (#93823)
update ownership of live FE
2024-09-27 11:43:02 +01:00
Tobias Skarhed
f49b4d35f2 OAuth: Add custom unauthorized message option in configuration (#93717)
* read custom message from config

* Read error key from bootdata

* oopsie

* Remove console.log

* Update docs and sample/default inis

* Add default key value to the config
2024-09-27 12:11:27 +02:00
renovate[bot]
08dab3f816 Update dependency eslint-plugin-react to v7.37.0 (#93891)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-27 10:48:11 +01:00
Gabriel MABILLE
6137a75552 Docs: document the managed_service_accounts_enabled configuration option (#93883)
* Config: Disclaimer single-org support for managed service accounts

* Add docs update

* Update docs/sources/setup-grafana/configure-grafana/_index.md
2024-09-27 11:07:02 +02:00
Jack Westbrook
f22bee8ca2 Build: Migrate packages to rollup v4 (#93731)
* chore(packages): bump rollup and rollup plugins to latest

* chore(packages): fix rollup node-externals plugin imports

* chore(packages): update build/bundle scripts to pass configPlugin arg to rollup

* feat(packages): migrate rollup configs to be esm compliant

* feat(packages): build using es2018 target and use same tsconfig and tsc for rollup
2024-09-27 11:00:13 +02:00
renovate[bot]
52611d4d02 Update dependency webpack-dev-server to v5.1.0 (#93845)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-27 09:42:03 +01:00
Sonia Aguilar
3dbba3e509 Alerting: Fix Grafana recording rules expressions (#93878)
fix grafana recording rules expressions
2024-09-27 10:07:48 +02:00
Roberto Jiménez Sánchez
826245f511 CloudMigrations: Avoid building GMS base path when provided (#93793)
Avoid building GMS base path when provided
2024-09-27 09:22:38 +02:00
Gabriel MABILLE
7928245eb6 ManagedServiceAccounts: Add a config option to disable the feature on-prem (#93571)
* ManagedServiceAccounts: Add a config option to disabled by default

* Update log in pkg/services/extsvcauth/registry/service.go

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2024-09-27 09:11:59 +02:00
Torkel Ödegaard
2cfba519f1 DashboardScene: Fixes urlsync issue when going from normal to home dashboard (#93758)
* DashboardScene: Fixes urlsync issue when going from normal to home dashboard

* Better fix

* Update
2024-09-27 09:10:49 +02:00
Matheus Macabu
40bcd0df41 LibraryElements: export GetAllElements to service (#93782) 2024-09-27 08:48:56 +02:00
Ryan McKinley
87c81825b7 K8s: Move standalone apiserver CLI to enterprise (#93799)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-09-27 09:04:35 +03:00
Michael Mandrus
e672796632 CloudMigrations: Fix OrderBy clause in GetSnapshotList sql handler (#93857)
fix order_by clause in list query
2024-09-26 22:51:01 -04:00
Jev Forsberg
dc1670ed9a CI: Bump alpine version (#93865)
* baldm0mma/up_alpine/ update alpine

* baldm0mma/resolve commits
2024-09-26 20:50:28 -05:00
Jev Forsberg
b17b98aeb9 CI: Update retry_command function (#93863)
* baldm0mma/update args

* baldm0mma/update_args/ conflict
2024-09-26 19:19:38 -06:00
Jev Forsberg
dc03cc0f9a CI: Bump alpine version (#93861)
baldm0mma/bump_alpine
2024-09-26 18:58:21 -06:00
Alexander Weaver
378d92130d Alerting: Don't suppress translation errors in PointsFromFrames (#93747)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Has been cancelled
* don't suppress error

* reorder

* re-add nilcheck
2024-09-26 16:30:50 -05:00
Steve Simpson
acb051b314 Alerting: Fix logging for failed annotations writing. (#93856) 2024-09-26 23:27:40 +02:00
Kevin Minehart
a847608061 CI: add promotion step for publish grafanacom (#93851)
* add promotion step for publish grafanacom

* publish-grafanacom depends on compile-build-cmd

* use DRONE_TAG

* add docstring comment for depends_on
2024-09-26 22:19:19 +01:00
Kim Nylander
6951feff88 [DOC] Add videos to Explore docs (#93847)
* Add videos to Explore docs

* Apply suggestions from code review
2024-09-26 15:32:43 -04:00
renovate[bot]
125a8a41dd Update dependency nx to v19.8.2 2024-09-26 16:57:15 +00:00
Santiago
920d79680d Alerting: Fix Slack notification errors when using bad title template (#93771)
* Alerting: Fix Slack notification errors when using bad title template

* upgrade grafana/alerting to latest main
2024-09-26 12:58:58 -03:00
renovate[bot]
7e4eb61be8 Update dependency dompurify to v3.1.7 2024-09-26 15:49:43 +00:00
Joao Silva
1418e88695 Bookmarks: Do not query preferences if no user logged in (#93840) 2024-09-26 16:47:57 +01:00
grafana-delivery-bot[bot]
80adb74205 Release: update changelog for 11.2.1 (#93835)
Update changelog

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-09-26 16:06:40 +01:00
renovate[bot]
efe8739864 Update dependency @types/node to v20.16.9 2024-09-26 14:55:59 +00:00
Santiago
7098c22f39 Docs: Remove deprecation warning on webhook payload fields (#92604) 2024-09-26 11:53:22 -03:00
Claudiu Dragalina-Paraipan
59ea63384d [bugfix] Fix missing URI in breadcrumbs in Teams view (#93828)
Fix missing URI in breadcrumbs in Teams view
2024-09-26 17:41:56 +03:00
Jack Westbrook
5a5d57311b Chore: Bump path-to-regexp (#93830)
chore(frontend): bump path-to-regexp to solve dependabot alert
2024-09-26 15:40:22 +01:00
renovate[bot]
ad960827cc Update dependency @types/jquery to v3.5.31 2024-09-26 14:33:05 +00:00
grafana-delivery-bot[bot]
fc84ec7618 Release: update changelog for 11.1.6 (#93825)
Update changelog

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-09-26 15:31:29 +01:00
Bruno
1b7cd4c684 Cloud migrations: store resource name in the cloud_migration_resource table (#93612)
* Cloud migrations: store resource name in the cloud_migration_resource table

* remove unused function: convertMigrateDataResponseToDTO

* make swagger-clean && make openapi3-gen

* use DB_Text for cloud_migration_resource.name instead of DB_Varchar
2024-09-26 11:16:52 -03:00
Ihor Yeromin
2e559bb333 Transformation: UI date field transformation (#93807)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Update `make docs` procedure / main (push) Has been cancelled
Run dashboard scenes e2e / dashboard-scenes-e2e (push) Has been cancelled
fix(transformation): ui date field transformation
2024-09-26 16:12:58 +02:00
Haris Rozajac
eb8e6c6a9f Query Library: Display query text even when datasource doesn't have getQueryDisplayText (#93668)
Display query text even when datasource doesn't have getQueryDisplayText
2024-09-26 08:10:02 -06:00
renovate[bot]
02fff05607 Update dependency @grafana/faro-web-tracing to v1.10.1 2024-09-26 14:08:13 +00:00
Hugo Kiyodi Oshiro
be8c8baf6f ConfirmModal: Allow button disable to be externally managed (#93446) 2024-09-26 15:56:25 +02:00
Gilles De Mey
4b1d8eeef0 Alerting: Remove filter for state without reason (#93604) 2024-09-26 15:40:04 +02:00
Brendan O'Handley
7aaa4b241e Explore metrics: Fix warning message for limiting metrics (#93817)
don't show undefined error
2024-09-26 14:34:28 +01:00
grafana-delivery-bot[bot]
570c5934d3 Release: update changelog for 11.0.5 (#93816)
Update changelog

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-09-26 14:33:10 +01:00
renovate[bot]
eee53810c0 Update dependency @grafana/faro-web-sdk to v1.10.1 2024-09-26 13:31:09 +00:00
Matheus Macabu
14abf2dab3 CloudMigrations: add Library Element as a valid migration resource type (#93781) 2024-09-26 15:29:28 +02:00
Ryan McKinley
afe464bc20 K8s/Storage: add a reusable generic storage builder (#93778) 2024-09-26 14:26:45 +01:00
renovate[bot]
b80bba387f Update dependency @grafana/faro-web-sdk to v1.10.1 2024-09-26 13:12:10 +00:00
grafana-delivery-bot[bot]
a68993825e Release: update changelog for 10.4.9 (#93808)
Update changelog

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Sergej-Vlasov <sergej.s.vlasov@gmail.com>
2024-09-26 14:06:12 +01:00
grafana-delivery-bot[bot]
dbd8b082a6 Release: update changelog for 10.3.10 (#93802)
Update changelog

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-09-26 13:54:38 +01:00
renovate[bot]
65a12e46a6 Update dependency @grafana/faro-core to v1.10.1 2024-09-26 12:53:08 +00:00
linoman
e2816ee51a RolePickerDrawer: Add feature toggle (#93752)
Add feature toggle
2024-09-26 14:51:38 +02:00
Todd Treece
df9925f3bb Live: Clean up redis after test run (#93806) 2024-09-26 08:41:47 -04:00
kay delaney
c602041f4a Fix failing tests 2024-09-26 13:13:41 +01:00
renovate[bot]
415b4b5782 Update dependency @grafana/scenes to v5.16.0 2024-09-26 13:13:41 +01:00
Edvard Falkskär
20a66343bd SparklineCell: Improve text alignment factor (#93539) 2024-09-26 14:41:03 +03:00
kay delaney
6c8f24adc9 Dashboards: Fix issue with percentage difference formatting (#93389)
* Dashboards: Fix issue with percentage difference formatting

---------

Co-authored-by: Ihor Yeromin <yeryomin.igor@gmail.com>
2024-09-26 11:15:51 +01:00
Ashley Harrison
0a01b60305 Chore: Add mock for useChromeHeaderHeight (#93788)
add mock for useChromeHeaderHeight
2024-09-26 10:23:20 +01:00
grafana-pr-automation[bot]
9531be9162 I18n: Download translations from Crowdin (#93760)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-09-26 10:19:24 +01:00
Josh Hunt
6be7033d29 Chore: Delete mockServiceWorker.js (#93768) 2024-09-26 10:10:33 +01:00
Roman Pertl
fa4baa7c38 Docs: update grafana-renderer auth token documentation (#93645) 2024-09-26 09:08:31 +00:00
Irene Rodriguez
c63c5857df Update CODEOWNERS (#93786) 2024-09-26 09:54:51 +01:00
Hugo Kiyodi Oshiro
368fc0f120 Plugins: Improve update all modal UX (#93448) 2024-09-26 10:19:26 +02:00
Ryan McKinley
cdbc04ab2b GRPC/Authn: Remove org name header (#93780) 2024-09-26 10:58:59 +03:00
Sonia Aguilar
536edee7bf Alerting: Query and expressions section simplification (#93022)
* Add mode switch in Query section

* Implement simple query mode : WIP

* fix logic switching mode

* move guard and get methodd to another folder

* Add more requiremts for being transformable from advanced to not advanced mode

* fix usig mode when it's not a grafana managed alert

* Show warning when switching to not advanced and its not possible to convert

* Add feature toggle alertingQueryAndExpressionsStepMode

* fix test

* add translations

* address PR feedback

* Use form context for sharing simplfied mode used, save in local storage and use the new fields in the api

* add check to valid reducer and threshold when switching to simplified mode

* Use only one expression list

* fix test

* move existing rule check outside storeInLocalStorageValues

* add id in InlineSwitch to handle onClick on label

* fix

* Fix default values when editing existing rule

* Update dto fields for the api request

* fix snapshot

* Fix recording rules to not show switch mode

* remove unnecessary Boolean conversion

* fix areQueriesTransformableToSimpleCondition

* update text

* pr review nit

* pr review part2
2024-09-26 08:33:14 +02:00
Adela Almasan
c36f7aa92b VizTooltip: Improved sizing (#93762)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Co-authored-by: Staton Hysell <staton.hysell@grafana.com>
2024-09-25 20:47:03 -05:00
Jeff Levin
a21a232a8e Revert read replica POC (#93551)
* Revert "chore: add replDB to team service (#91799)"

This reverts commit c6ae2d7999.

* Revert "experiment: use read replica for Get and Find Dashboards (#91706)"

This reverts commit 54177ca619.

* Revert "QuotaService: refactor to use ReplDB for Get queries (#91333)"

This reverts commit 299c142f6a.

* Revert "refactor replCfg to look more like plugins/plugin config (#91142)"

This reverts commit ac0b4bb34d.

* Revert "chore (replstore): fix registration with multiple sql drivers, again (#90990)"

This reverts commit daedb358dd.

* Revert "Chore (sqlstore): add validation and testing for repl config (#90683)"

This reverts commit af19f039b6.

* Revert "ReplStore: Add support for round robin load balancing between multiple read replicas (#90530)"

This reverts commit 27b52b1507.

* Revert "DashboardStore: Use ReplDB and get dashboard quotas from the ReadReplica (#90235)"

This reverts commit 8a6107cd35.

* Revert "accesscontrol service read replica (#89963)"

This reverts commit 77a4869fca.

* Revert "Fix: add mapping for the new mysqlRepl driver (#89551)"

This reverts commit ab5a079bcc.

* Revert "fix: sql instrumentation dual registration error (#89508)"

This reverts commit d988f5c3b0.

* Revert "Experimental Feature Toggle: databaseReadReplica (#89232)"

This reverts commit 50244ed4a1.
2024-09-25 15:21:39 -08:00
Isabel Matwawana
25ca760ee1 Docs: Fix broken links (#93767)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-09-25 16:39:14 -04:00
Alexander Akhmetov
b9964865cb Alerting: Copy alert rule metadata when the rule is updated via provisioning API (#93723)
Alerting: Copy alert rule metadata when the rule is updated
2024-09-25 22:31:02 +02:00
Todd Treece
277d82db9a Live: Add ha_prefix (#93759) 2024-09-25 22:20:35 +02:00
Torkel Ödegaard
57ab354139 DashboardScene: Fixes issue with dashboard starting with auto refresh set (#93756) 2024-09-25 20:14:52 +02:00
Oscar Kilhed
b68d9630fb PanelEdit: Hide overflow for query options in small viewports (#93700)
Hide overflow for query options in small viewports
2024-09-25 20:08:05 +02:00
Serena
c822feff9e Home: add setup guide tab under home tab (#92947)
* feat: add setup guide in home tab

* chore: add feature toggle for setup guide

* chore: add feature toggle for sub menu

* chore: run pretier

* chore: run i18n

* chore: run generated files again

* chore: update description

* chore: update comment to trigger test flow

* chore: trigger test

* chore: fix styling
2024-09-25 18:20:04 +01:00
Isabel Matwawana
26a3e70cfa Docs: Table visualization refactor (#93633) 2024-09-25 13:06:33 -04:00
Laura Fernández
95b998d77f SingleTopNav: MegaMenu full page height (#93729) 2024-09-25 17:56:47 +02:00
ismail simsek
5fe4a2f6a9 Explore Metrics: Add consistent maxDataPoints value across the app (#93618)
Add consistent maxDataPoints value across the app
2024-09-25 17:53:26 +02:00
renovate[bot]
2c98767d17 Update dependency webpack to v5.95.0 [SECURITY] (#93751)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-25 16:19:58 +01:00
Matheus Macabu
1e720306dd CloudMigrations: replace slicesext.Chunk with stdlib implementation (#93743) 2024-09-25 16:52:22 +02:00
renovate[bot]
5880579be8 Update dependency sass to v1.79.3 (#93741)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-25 17:30:12 +03:00
Tobias Skarhed
1f7457c02c New Select: Extract floating ui setup into hook (#93387)
* New Select: Extratc floating ui setup into hook

* Remove unused exports

* Rename exported floatStyles

* Set maxHeight instead of using js to find it

* Extarct into seperate file
2024-09-25 16:27:17 +02:00
grafana-pr-automation[bot]
2651ce5dce I18n: Download translations from Crowdin (#93744)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-09-25 15:22:50 +01:00
Matheus Macabu
40ce035ed7 LibraryElements: remove viewer check when connecting a dashboard on General folder (#93737) 2024-09-25 16:16:59 +02:00
Isabel Matwawana
d24d59299b Docs: Change weight of sharing page (#93746) 2024-09-25 10:15:35 -04:00
Juan Cabanas
682a4073b4 ShareDrawer: Add share button tracking (#93742) 2024-09-25 17:03:30 +03:00
linoman
b6906cc866 SSO LDAP: ironing details (#93584)
* Rework description tooltip

* Null protect empty

* Add missing ref properties for form controllers

* Rework LDAP provider label

* Add missing `*` for required input

* Hide multiselect visual queues

* Add modal

* Adjust translated text hierarchies

* Add redirect confirmation modal
2024-09-25 15:59:57 +02:00
Isabel Matwawana
267f417924 Docs: update docs to reflect new sharing UI - 2 (#93002) 2024-09-25 09:47:33 -04:00
Isabel Matwawana
10a1bee86d Docs: Update use dashboard image for sharing redesign (#92957)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
publish-kinds-next / config (push) Has been cancelled
publish-kinds-next / main (push) Has been cancelled
2024-09-25 09:43:47 -04:00
Isabel Matwawana
dbf0949ca7 Docs: update docs to reflect new sharing UI (#90630)
Co-authored-by: Juan Cabanas <juan.cabanas@grafana.com>
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-09-25 09:42:58 -04:00
renovate[bot]
f80d3d687d Update dependency @grafana/scenes to v5.15.0 (#93730)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-25 14:41:48 +01:00
renovate[bot]
5cd9ef562d Update dependency react-loading-skeleton to v3.5.0 (#93740)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-25 16:41:18 +03:00
Matthew Jacobson
e86929eb0a Alerting: Managed receiver resource permission in config api (#93632)
* Alerting: Managed receiver resource permission in config api
2024-09-25 09:39:36 -04:00
Yuri Tseretyan
10582e48f7 Alerting: Notifications Templates API (#91349) 2024-09-25 09:31:57 -04:00
ismail simsek
5472478ee8 Prometheus: Fix e2e selector by using "data-test-id" instead of "id" (#93736)
* use data-test-id instead of id

* don't skip
2024-09-25 15:29:19 +02:00
renovate[bot]
85bffcf787 Update dependency browserslist to v4.24.0 (#93733)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-25 14:20:12 +01:00
Andres Martinez Gotor
225600a08b Expose queryconvert endpoint (#93656) 2024-09-25 15:10:19 +02:00
Todd Treece
177965704d Storage: Test mode 5 (#93714) 2024-09-25 08:29:17 -04:00
Laura Fernández
618e4014a7 Dashboards: SaveButton not available after changing the folder (#93216) 2024-09-25 13:30:36 +02:00
Ashley Harrison
8e5459791b SingleTopNav: Initial changes (#93694)
initial changes for single top nav
2024-09-25 14:27:30 +03:00
renovate[bot]
9a67cd614d Update dependency @grafana/plugin-e2e to v1.8.1 2024-09-25 11:06:34 +00:00
Josh Hunt
d2d1de39a7 GrafanaUI: Make Drawer extend to full height (#93725) 2024-09-25 12:05:20 +01:00
Ben Sully
4791d91408 fix(datasources): add option to avoid adding '-- Grafana --' DS (#90175)
* fix(datasources): add option to avoid adding '-- Grafana --' DS

Currently the `getList` method of `DatasourceSrv` adds the
'-- Grafana --' datasource in the majority of situations, unless a few
of the other filters are set, all of which affect the results in other
ways. This is the case even if the `filter` function is passed.
This causes the `DataSourcePicker` component to include the
'-- Grafana --' datasource in cases it's unsupported, such as in
Grafana ML where we only support specific datasource types.

This commit adds a new optional `grafana` field to the filter interface.
If explicitly set to `false`, the '-- Grafana --' datasource will not be
added to the list of datasources returned.

This should be backwards compatible and should allow developers to prevent
that datasource from appearing in the `DataSourcePicker`.

Relates to https://github.com/grafana/machine-learning/issues/4578.

* Use filter func to see if we should add '-- Grafana --', instead
2024-09-25 11:04:45 +00:00
renovate[bot]
a0de3ef867 Update dependency @types/node to v20.16.7 2024-09-25 10:46:05 +00:00
Pepe Cano
75900139ae Alerting docs: update Configure Alertmanagers (#93712)
* Alerting docs: update `Configure Alertmanagers`
- clarify alertmanager types
- specify that each alertmanager manages its own alerting resources

* Update docs/sources/alerting/set-up/configure-alertmanager/index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/set-up/configure-alertmanager/index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/set-up/configure-alertmanager/index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* use `Alertmanager` - capitalize the first letter

* Small copy changes

* Minor cosmetic updates to `Add an Alertmanager` section

* Update docs/sources/alerting/set-up/configure-alertmanager/index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

---------

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2024-09-25 12:44:17 +02:00
Josh Hunt
54d52d0bf9 E2C: Add rudderstack reporting for cloud-side token generation (#93334) 2024-09-25 10:23:31 +01:00
renovate[bot]
d447fc3a82 Update dependency re-resizable to v6.10.0 (#93695)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-25 10:05:54 +01:00
Torkel Ödegaard
d371fae3c8 DashboardScene: Fixes issue with updating repeated panels after coming back from panel edit (#93716) 2024-09-25 11:04:20 +02:00
Joe Blubaugh
14a5d605ae Docs: Remove some duplication in alerting rules docs. (#93376) 2024-09-25 09:11:29 +02:00
Arati R.
2c26053be8 K8s/Folders: Convert additional fields when creating k8s resources (#93395)
* Add separate folder registration function
* Convert to k8s resource directly after legacy create
* Use create command when creating folders
* Set additional fields when converting to k8s resource
* Add created/updated timestamps during conversion
* Refactor UnstructuredToLegacyFolderDTO
* Return errors when doing k8s conversions
2024-09-25 08:56:15 +02:00
grafana-pr-automation[bot]
8c5dfa33d4 I18n: Download translations from Crowdin (#93683)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-09-25 09:38:23 +03:00
Adela Almasan
1726567fcf Canvas: Restore support for field-level data links (#93708)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2024-09-25 05:25:39 +03:00
Adela Almasan
2b94a82baa AngularMigration: Migrate series Graph to BarGauge (#92609) 2024-09-25 00:42:59 +03:00
Isabel Matwawana
1cbe8772c2 Docs: Restructure Search content (#93636)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-09-24 16:12:08 -04:00
Tokoro
a0122187b0 Dashboards: Check if Grafana Javascript agent is enabled before using faro.api (#90509)
Check if Grafana Javascript agent is enabled before using faro.api
2024-09-24 22:18:15 +03:00
maicon
377079d8b3 UniStore: Add config to enable periodic DualWriter DataSyncer (#93555)
Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
2024-09-24 22:03:15 +03:00
Misi
59af06e36a Devenv: Add serve_from_sub_path scenario to nginx devenv (#93691)
Setup serve_from_sub_path scenario with nginx
2024-09-24 19:53:29 +02:00
Andreas Christou
564ee32b04 AzureMonitor: Improve errorsource (#93533)
* Improve errorsource

* Fix imports
2024-09-24 12:45:44 -05:00
Andreas Christou
76c8975b4f AzureMonitor: Deduplicate resource picker rows (#93129)
* Use URI for querying resources in RG

- Ensure resource group names are correctly slash separated

* Update test
2024-09-24 12:45:08 -05:00
Andreas Christou
488e71226b InfluxDB: Add support for LIST arrow type (#93227)
Add support for LIST arrow type
2024-09-24 18:36:07 +01:00
renovate[bot]
7e61d4f80d Update dependency babel-loader to v9.2.1 (#93681)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-24 17:46:50 +01:00
Andreas Christou
090958489c MSSQL: Update dependencies (#93692)
Use appropriate deps and bumpy TS to match root
2024-09-24 19:45:22 +03:00
Misi
d411ce2664 Auth: Use sessionStorage instead of cookie for automatic redirection (#92759)
* WIP: working as expected, has to be tested

* Rename query param, small changes

* Remove unused code

* Address feedback

* Cleanup

* Use the feature toggle to control the behaviour

* Use the toggle on the FE too

* Prevent the extra redirect/reload

 Co-authored-by: Josh Hunt <joshhunt@users.noreply.github.com>

* Return to login if user is not authenticated

* Add tracking issue

* Align BE redirect constructor to locationSvc
2024-09-24 18:38:09 +02:00
ismail simsek
18f8f38418 Prometheus: Fix query interval string interpolation in query cache (#93678)
fix query interval string interpolation in query cache
2024-09-24 18:03:16 +02:00
Torkel Ödegaard
05dbba4c85 DashboardScene: Fix broken error handling and error rendering (#93680) 2024-09-24 17:59:32 +02:00
Torkel Ödegaard
038d9cabde PanelEdit: Edit the source panel, refactor out VizPanelManager, simplify (#93045)
* Options pane, data pane queries tab and transformations tab working

* Update

* Discard works

* Panel inspect working

* Table viw works

* Repeat options

* Began fixing tests

* More tests fixed

* Progress on tests

* no errors

* init full width when enabling repeat

* Began moving VizPanelManager tests to where the code was moved

* Unlink libray panel code and unit test

* Fixes and unit tests for change tracking and resetting original state and dirty flag when saving

* migrating and improving unit tests

* Done with VizPanelManager tests refactoring

* Update

* Update

* remove console.log

* Removed unnesssary behavior and fixed test

* Update

* Fix unrelated test

* conditional options fix

* remove

* Fixing issue with editing repeated panels and scoping variable to first value

* Minor fix

* Fix discard query runner changes

* Review comment changes

* fix discard issue with new panels

* Add loading state to panel edit

* Fix test

* Update

* fix test

* fix lint

* lint

* Fix

* Fix overrides editing  mutating fieldConfig

---------

Co-authored-by: alexandra vargas <alexa1866@gmail.com>
2024-09-24 17:13:32 +02:00
Oscar Kilhed
9adb7b03a7 Remove buildstamp from build hash. Version and commit should be enough (#93658)
Remove buildstamp from build hash, version and commit should be enough
2024-09-24 17:10:29 +02:00
Torkel Ödegaard
ae5a7a53a9 TimePicker: Support strings in ISO formats (#93479)
* TimePicker: Support strings in ISO formats

* changed fix and added test
2024-09-24 17:00:15 +02:00
renovate[bot]
db697a3e23 Update dependency @rollup/plugin-node-resolve to v15.3.0 (#93677)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-24 15:43:03 +01:00
Kristina
002f872ce1 Correlations: Allow correlations to target URLs (#92442)
* Pass one

* Fix linter and add new betterer problem (sorry)

* fix swagger

* Add type to tests and update single correlations sql

* Fix provisioning test and other function that needs a type

* Add errors around query/external typing and add tests

* increment number of correlations tested as we added one for testing v1 type placement

* try merging back the swagger that is in main

* try again?

* Style form a little

* Update public/app/features/logs/components/logParser.ts

Co-authored-by: Matias Chomicki <matyax@gmail.com>

* fix bad commit, simplify logic

* Demonstrating type difficulties

* Fix distributed union changes

* Additional type changes

* Update types in form

* Fix swagger

* Add comment around the assertion and explicit typing

---------

Co-authored-by: Matias Chomicki <matyax@gmail.com>
Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
2024-09-24 09:38:17 -05:00
renovate[bot]
8da1d78c92 Update dependency @grafana/faro-web-tracing to v1.10.0 (#93666)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-24 15:16:26 +01:00
Jihoon Park
4290d0e459 Docs: fix typo in developers/http_api/data_source.md (#93650) 2024-09-24 14:08:43 +00:00
Piotr Jamróz
813e1c1364 Correlations: Limit access to correlations page to users who can access Explore (#93519)
Correlations: Limit access to correlations page to users who can access Explore
2024-09-24 16:02:02 +02:00
Joey
d30dc3ad50 TraceView: Fix for toString() usage in span filters (#93648)
Fix for toString() usage
2024-09-24 14:47:22 +01:00
Torkel Ödegaard
ae6ea459b9 DashboardScene: Do not add hide flags to URL (#93641)
* DashboardScene: Do not add hide flags to URL

* Update
2024-09-24 15:24:56 +02:00
Karl Persson
c28b37a67b RBAC: Add option to skip rbac check for specified verbs (#93654)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Has been cancelled
* Add option to skip rbac check for specified verbs
2024-09-24 15:13:04 +02:00
renovate[bot]
b04799dab9 Update dependency @types/node to v20.16.6 2024-09-24 12:58:22 +00:00
Will Browne
52f8cecd4a Plugins: Add state logs for plugin client retrieval (#93630)
* add state to grpc plugin

* tidy

* fix lint

* fix issues

* return true

* use defer

* update err message
2024-09-24 15:55:02 +03:00
Ashley Harrison
a54308138f Navigation: Remove bodyScrolling toggle and make it default (#93652)
* remove bodyScrolling toggle and make it default

* fix e2e tests
2024-09-24 13:23:18 +01:00
Oscar Kilhed
7f7fed8c3c Playlists: Check if playlist is playing before reloading for assets (#93605)
* Check if playlist is playing before updating

* add tests
2024-09-24 14:00:03 +02:00
Torkel Ödegaard
f04e032cf1 FieldOverrides: Clear displayName caching after applying field overrides (#93651)
* FieldOverrides: Clear displayName caching after applying field overrides

* Remove old comment
2024-09-24 13:51:02 +02:00
renovate[bot]
5193318c56 Update dependency @types/lodash to v4.17.9 2024-09-24 11:47:46 +00:00
Jean-Philippe Quéméner
bfc6c032c4 refactor(alerting): remove transformation that is now done by the querier (#93660) 2024-09-24 14:46:03 +03:00
renovate[bot]
314f770a71 Update Yarn to v4.5.0 (#93626)
* Update Yarn to v4.5.0

* commit new version

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2024-09-24 14:03:04 +03:00
Todd Treece
3221f493f9 K8s: Prevent registration of frontend datasources (#93635) 2024-09-24 06:39:11 -04:00
Vitaly Orlov
4e93e2c7f1 Jaeger: Add references to trace view UI (#92607)
* Jaeger: Add references to trace view UI

* Fixes

* Fix tests

---------

Co-authored-by: Ivana Huckova <ivana.huckova@gmail.com>
2024-09-24 12:38:13 +02:00
Victor Marin
764ec264c8 Fix deps on panel options (#93647) 2024-09-24 13:23:00 +03:00
grafana-pr-automation[bot]
2ceb3c699d I18n: Download translations from Crowdin (#93322)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-09-24 13:19:39 +03:00
renovate[bot]
fa25b10bf8 Update dependency @floating-ui/react to v0.26.24 (#93580)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-24 09:58:58 +01:00
Gabriel MABILLE
6b89e3f711 go.mod: Authlib update (#93642) 2024-09-24 09:41:52 +02:00
Torkel Ödegaard
6c63aec586 Calendar/TimePickers: By default use the system/user start of week (#93464)
Calendar: Should automatically use user or system start of week
2024-09-24 08:19:55 +02:00
Claudiu Dragalina-Paraipan
a8b07b0c81 [authn] use authlib client+interceptors for in-proc mode (#93124)
* Add authlib gRPC authenticators for in-proc mode

* implement `StaticRequester` signing in the unified resource client
- [x] when the `claims.AuthInfo` value type is `identity.StaticRequester`, and there's no ID token set, create an internal token and sign it with symmetrical key. This is a workaround for `go-jose` not offering the possibility to create an unsigned token.
- [x] update `IDClaimsWrapper` to support the scenario above
- [x] Switch to using `claims.From()` in `dashboardSqlAccess.SaveDashboard()`

---------

Co-authored-by: gamab <gabriel.mabille@grafana.com>
2024-09-24 09:03:48 +03:00
Charandas
db97da3465 K8s: handle multiple versions of the same group in standalone mode (#93199)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-09-23 19:07:52 -07:00
Matthew Jacobson
e699348d39 Alerting: Managed receiver resource permission in provisioning (#93631)
* Alerting: Managed receiver resource permission in provisioning
2024-09-23 17:52:14 -04:00
Brian Gann
5c9486afbc area/configuration: adds docs for actions_allow_post_url security option (#93629)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
publish-technical-documentation-next / sync (push) Has been cancelled
adds docs for actions_allow_post_url security option
2024-09-23 15:41:29 -04:00
owensmallwood
4c8f6b742b Grafana: Skip flaky test influxdb (#93627)
* skip flaky test

* remove slack link
2024-09-23 21:37:13 +03:00
Matthew Jacobson
6652233493 Alerting: Managed receiver resource permission in receiver_svc (#93556)
* Alerting: Managed receiver resource permission in receiver_svc
2024-09-23 21:12:25 +03:00
renovate[bot]
ff37d477fd Update dependency react-select to v5.8.1 2024-09-23 17:15:58 +00:00
brendamuir
5a1a3204c9 Alerting docs: adds ha-advertise-address to alerting docs (#93303)
* Alerting docs: adds ha-advertise-address to alerting docs

* Change description of setting [ha_advertise_address]

---------

Co-authored-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com>
2024-09-23 19:14:34 +02:00
Will Browne
7cd546238b Revert "Plugins: Add logs for plugin proto client retrieval" (#93617)
Revert "Plugins: Add logs for plugin proto client retrieval (#93527)"

This reverts commit ccf6fbebfa.
2024-09-23 19:26:02 +03:00
renovate[bot]
eee7270b07 Update dependency rc-tooltip to v6.2.1 2024-09-23 19:19:24 +03:00
antonio
f16f0c2e46 autotriager:update commands.json (#93613)
autotriager:updated commands.json
2024-09-23 18:55:48 +03:00
Adela Almasan
d630e9bcb3 Chore: Update Action interface (#93248)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2024-09-23 10:41:05 -05:00
renovate[bot]
026748a5ab Update dependency rc-slider to v11.1.6 2024-09-23 18:38:45 +03:00
Alexander Zobnin
5e713673e1 Annotations: Optimize search by tags (#93547)
* Annotations: Optimize search on large number of dashboards

* refactor

* fix batch size

* Return early if no annotations found

* revert go.mod

* return nil in case of error

* Move default limit to the API package

* fix empty access control filter

* Set default limit to 100

* optimize query when number of annotations is less than limit

* Update pkg/services/annotations/annotationsimpl/annotations.go

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

* remove limit from store since it's set in API

* set default limit in Find method (do not break tests)

* Only add limit to the query if it's set

* use limit trick for all searches without dashboard filter

* set default page if not provided

---------

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2024-09-23 17:29:29 +02:00
linoman
5bc7a47ecb Auth: Update extra_hosts property (#93545)
Update extra_hosts property
2024-09-23 17:21:09 +02:00
renovate[bot]
f314220be1 Update dependency postcss to v8.4.47 2024-09-23 15:18:40 +00:00
Misi
d6f4246f77 Docs: Update SAML docs (#93379)
SAML docs update
2024-09-23 17:16:53 +02:00
renovate[bot]
a20a0debf7 Update dependency msw to v2.4.9 2024-09-23 14:59:01 +00:00
Gabriel MABILLE
7714b65f32 Cfg: Deduplicate DefaultOrgID code (#93588)
Cfg: Expose DefaultOrgID function
2024-09-23 16:50:11 +02:00
renovate[bot]
d38e2feab9 Update dependency knip to v5.30.5 2024-09-23 17:33:16 +03:00
Juan Cabanas
cedd66cefc ShareDrawer: Export as JSON code editor fix (#93593) 2024-09-23 16:31:23 +02:00
owensmallwood
8bbfbc61be Unified Storage: Adds a few readme updates from issues I ran into with local dev (#93553)
adds a few readme updates from issues I ran into with local dev
2024-09-23 08:25:19 -06:00
Mat Ryer
b9d325884b update 'Simplified exploration' page (#93565)
* update 'Simplified exploration' page

* removed extra 'Explore' heading, which is a little confusing in this context
* simplified the intro text to sound more like the rest of the docs

* Update docs/sources/explore/simplified-exploration/_index.md

Co-authored-by: Jennifer Villa <jvilla2013@gmail.com>

---------

Co-authored-by: Kim Nylander <104772500+knylander-grafana@users.noreply.github.com>
Co-authored-by: Jennifer Villa <jvilla2013@gmail.com>
2024-09-23 10:21:24 -04:00
Alexa V
067ea66cbb Dashboard: Annotations - Fix issue of angularEditorLoader when angular is not supported (#93583)
Dashboard: Annotations - Fix issue of angularEditorLoader when angular is not supported
2024-09-23 16:17:59 +02:00
renovate[bot]
1a13e7fd95 Update dependency @types/systemjs to v6.15.1 2024-09-23 14:11:17 +00:00
Premkumar Chalmeti
ac9015bb2f Update _index.md (#93572)
Updated `grafana.ini` file path for macOS apple sillicon
2024-09-23 09:10:36 -05:00
Andres Martinez Gotor
a45167a595 Remove backgroundPluginInstaller feature flag (#93540) 2024-09-23 15:49:18 +02:00
renovate[bot]
07f11e9222 Update dependency @rollup/plugin-node-resolve to v15.2.4 2024-09-23 13:37:26 +00:00
maicon
d60351d8e8 Unistore: fix DualWriter context cancelation on mode 1 (#93377)
* Unistore: fix DualWriter context cancelation on mode 1

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
2024-09-23 10:34:36 -03:00
renovate[bot]
83cde35668 Update dependency @playwright/test to v1.47.2 2024-09-23 13:12:56 +00:00
Tom Ratcliffe
cc68f1b673 Alerting: Fix sending secure settings when using K8S API for contact points (#93498) 2024-09-23 14:02:58 +01:00
renovate[bot]
bcab60d9e6 Update dependency @msagl/parser to v1.1.23 2024-09-23 12:47:18 +00:00
Galen Kistler
26b039bb81 Prometheus: Incremental query cache keep extra datapoint before new 'from' (#93186)
* fix: keep extra datapoint before new 'from' when evicting datapoints in incremental query cache

* remove redundant comments

* Update todo

* move prometheus specific code in a new function

* add unit test

---------

Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>
2024-09-23 14:45:31 +02:00
renovate[bot]
5a2f22c60d Update dependency @msagl/core to v1.1.23
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-09-23 12:23:10 +00:00
renovate[bot]
861423a209 Update dependency nx to v19.8.0 (#91393)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-23 12:30:35 +01:00
Juan Cabanas
bafb69d877 ShareDrawer: GA enablement (#93344) 2024-09-23 13:28:48 +02:00
renovate[bot]
08b2805d07 Update dependency esbuild to v0.24.0 (#87650)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-23 12:27:38 +01:00
antonio
c78ea87751 Docs > alerting: example of conditional notification based on labels (#93541)
* Docs > alerting: example of conditional notification based on labels

* typos

* Update docs/sources/alerting/configure-notifications/template-notifications/create-notification-templates.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

---------

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2024-09-23 10:24:09 +00:00
Hugo Kiyodi Oshiro
6f3f8c0e99 Plugins: Add rudderstack events to plugins update (#92989) 2024-09-23 11:52:46 +02:00
Misi
b369341868 Chore: Add feature toggle for session storage redirect handling (#93575)
Add feature toggle for session storage redirect handling
2024-09-23 12:31:23 +03:00
Karl Persson
2e38329026 RBAC: Add required component to perform access control checks for user api when running single tenant (#93104)
* Unexport store and create new constructor function

* Add ResourceAuthorizer and LegacyAccessClient

* Configure checks for user store

* List with checks if AccessClient is configured

* Allow system user service account to read all users

---------

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2024-09-23 11:26:44 +02:00
Matias Chomicki
bca8bd3c8b Logs: Added query splitting support for forward searching logs (#93450)
Query splitting: add support for forward searching logs
2024-09-23 11:22:06 +02:00
Sven Grossmann
7189a4af81 Loki: Add UI support for detected_level (#93574)
feat(detected_level): Add UI support for `detected_level`
2024-09-23 11:20:16 +02:00
Karl Persson
da60c561a8 Docs: Update to use correct config key for saml token url (#93569)
Update to use correct config key for saml token url
2024-09-23 09:19:38 +02:00
Kim Nylander
76d5608473 [DOC] Add landing page for simplified exploration (#93515)
Some checks failed
publish-technical-documentation-next / sync (push) Has been cancelled
Sync to mirror / trigger_downstream_patch_mirror (push) Has been cancelled
/ Alerting Swagger spec generation cron job (push) Has been cancelled
* Add landing page for simplified exploration

* shortened the sentences

* Apply suggestions from code review

* Apply suggestions from code review

---------

Co-authored-by: Mat Ryer <matryer@users.noreply.github.com>
2024-09-21 01:47:21 -04:00
Matthew Jacobson
1ede1e32b8 Alerting: Receiver resource permissions service (#93552)
Some checks failed
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
golangci-lint / lint-go (push) Has been cancelled
2024-09-20 18:31:42 -04:00
Matthew Jacobson
7398fe3fcb Alerting: Proxy RouteDeleteAlertingConfig through MultiOrgAlertmanager (#93549)
Proxy RouteDeleteAlertingConfig through MultiOrgAlertmanager
2024-09-20 15:25:14 -04:00
Will Browne
ccf6fbebfa Plugins: Add logs for plugin proto client retrieval (#93527)
Some checks failed
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
2024-09-20 17:36:11 +01:00
Ezequiel Victorero
e22540b763 PublicDashboards: Fix import email sharing api (#93480) 2024-09-20 17:00:02 +01:00
Alexander Akhmetov
0ed70d0b2f Alerting: Add a metric to track the number of rules with simplified editor settings (#93511)
* Alerting: Add a metric to track the number of rules with simplified editor settings
2024-09-20 17:56:40 +02:00
Isabella Siu
fac98d9084 Elasticsearch: Fix source for invalid query error (#93501) 2024-09-20 11:06:30 -04:00
Isabella Siu
2ad558d046 CloudWatch: Fix segfault when migrating legacy queries (#93543) 2024-09-20 10:54:34 -04:00
Georges Chaudy
216b63549d unistore: fix watch events forever looping (#93517) 2024-09-20 15:51:09 +02:00
Syerikjan Kh
715ee35abc RBAC: Check forceLogin inside CanAdminPlugins (#93449) 2024-09-20 09:35:58 -04:00
Eric Leijonmarck
f9ad81f715 LBAC for datasources: Allow self serve (#93477)
* LBAC for datasources: Allow self serve

* capitilized LogQL
2024-09-20 14:24:40 +01:00
brendamuir
a2859de5b6 Alerting docs: updates duration type to string (#93532)
* Alerting docs: updates duration type to string

* ran prettier
2024-09-20 14:55:44 +02:00
Gabriel MABILLE
8d84517103 AuthN: Introduce DefaultOrgID function for managed service accounts (#93432)
* Managed Service Accounts: Use AutoAssignOrgID

* Fix the IsExternalServiceAccount function

* Reassign service account role

* Account for AutoAssignOrg

* Update pkg/services/serviceaccounts/models.go

* Simplify IsExternalServiceAccount function

* Add tests

* Easier to understand test

* Revert small change
2024-09-20 14:43:29 +02:00
renovate[bot]
bb69afed7c Update dependency @grafana/faro-web-sdk to v1.10.0 (#93347)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Has been cancelled
Trivy Scan / trivy-scan (push) Has been cancelled
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-20 11:32:47 +01:00
Timur Olzhabayev
e32810b9f2 Docs: Clarifying the messaging around dependencies a bit more (#93029)
* Clarifying the messaging around dependencies a bit more

* Update docs/sources/developers/plugins/plugin.schema.json

Co-authored-by: Joseph Perez <45749060+josmperez@users.noreply.github.com>

---------

Co-authored-by: Joseph Perez <45749060+josmperez@users.noreply.github.com>
2024-09-20 10:23:17 +00:00
Andreas Christou
e18d029a24 GCM: Improve error handling (#93474)
* Improve error handling

* More manual errorsource

* Revert some changes from original PR

* Update test
2024-09-20 10:40:05 +01:00
ismail simsek
19c7e1f376 Chore: Refactor explore metrics breakdown scene (#93368)
* refactor breakdown scene

* refactor BreakdownScene along with LayoutSwitcher

* rename

* don't pass default layout

* better type handling

* betterer

* add @bsull/augurs

* implement LabelBreakdownScene

* integrate SortByScene in LabelBreakdownScene

* move to new directory

* introduce BreakdownSearchScene

* integrate searchScene

* cleaning

* initialize @bsull/augurs

* add interaction

* use new breakdown scene

* resolve merge conflicts

* ugrade @bsull/augurs

* update import

* update css

* update tooltip text

* refine sorting

* fix unit test

* fix

* implement outlier detector

* support wasm

* jest testing fix

* localization fix

* use unknown instead of any

* update i18n

* update betterer

* fix locales

* update test

* fix tests maybe

* prettier

* chore: update jest config

* chore: create mock for @bsull/augurs (#92156)

chore: create mock for bsull/augurs

@bsull/augurs assumes it will be running as an ESM, not
a CommonJS module, so can't be loaded by Jest (specifically
because it contains a reference to import.meta.url).

This PR provides a mock implementation which gets tests passing
again.

Ideally we'd be able to load the actual @bsull/augurs module
in tests so this is just a stopgap really, until a better
solution appears.

* fix unit tests

* remove unused BreakdownScene.tsx

* set outliers as undefined if an error occurs

* Add labels

* betterer

* reset event implemented

* fix controls positioning

* remove sorting

* fix type guard

* more clean up

* remove wasm support from webpack

* betterer

---------

Co-authored-by: Matias Chomicki <matyax@gmail.com>
Co-authored-by: Ben Sully <ben.sully@grafana.com>
2024-09-20 10:22:34 +02:00
Andres Martinez Gotor
74b2d38e37 Chore: Update grafana-plugin-sdk (#93426) 2024-09-20 10:20:59 +02:00
Matheus Macabu
945484232c CloudMigrations: remove unused code from sync migration approach (#93430) 2024-09-20 08:58:11 +02:00
Andrew Hackmann
8b6cec2356 Azure Monitor: Blank result formats are not overwritten (#93493)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
* if result format is null from previous query, it will be null and not correct to a different format

* update to not have empty value in result format field

* fix tests

* add check to see if options are in list

* reformat stuff so logic lives on the right layer

* linterrrrrrrrrrrrrrrrrrRR

* Apply suggestions from code review

* if result format is null from previous query, it will be null and not correct to a different format

* update to not have empty value in result format field

* fix tests

* add check to see if options are in list

* reformat stuff so logic lives on the right layer

* linterrrrrrrrrrrrrrrrrrRR

* frontend linter

* linter

* feedback :)
2024-09-20 02:30:03 +03:00
William Wernert
f1ba7deff5 Alerting: Also clear fields in model/store validation for recording rules (#93506)
* Fix model validation

* Remove validation from provisioning service
2024-09-20 00:27:37 +03:00
Larissa Wandzura
9a40e8dca6 Docs: Removed public preview note from Explore Metrics (#93503)
removed public preview, EM is now GA
2024-09-19 16:21:26 -05:00
Aaron Godin
735332570f feat: GroupSync extension UI (#91777)
* feat: supporting code for groupsync extension UI

* Add result of running i18n extraction

* Place the UI behind a feature toggle as well as the license feature

* Also add access checks to route loading of groupsync route with feature toggle

* Add access check on permissions to show External group sync in nav

* fix: New version of multiOrgRoleOptions hook

* Remove OSS route definition

* Apply feedback on nav title
2024-09-19 14:58:11 -05:00
Alexander Weaver
534bfba7e3 Alerting: Use typed errors in prometheus remote writer (#93500)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Update `make docs` procedure / main (push) Has been cancelled
Run dashboard scenes e2e / dashboard-scenes-e2e (push) Has been cancelled
Strongly typed writer errors
2024-09-19 13:34:35 -05:00
lean.dev
5522c3a01b Grafana: Adds support for PKCS1 encrypted certs (#93451) 2024-09-19 15:03:06 -03:00
Jean-Philippe Quéméner
caa967b270 fix(querier): handle single alerting queries without expression (#93497) 2024-09-19 19:20:39 +02:00
Michael Mandrus
f4c5c5c418 Chore: Fix flaky cloud migration test due to ordered steps running in parallel (#93491)
don't run test in parallel
2024-09-19 18:45:02 +03:00
Alexander Akhmetov
9f5b05f936 Alerting: Add metadata field with editor_settings to alert rule (#93245) 2024-09-19 16:43:41 +02:00
Brendan O'Handley
4d1adf9db4 Explore Metrics: Get OTel resources and filter metrics and labels (#91221)
* add OTel filter in metric select scene

* add resource query to get matching OTEL job&instance

* filter metrics by OTEL resources

* only add otel select if DS has OTEL matching job and instance

* add folder for otel resources

* upate metric select for new otel folder

* move otel api call

* get otel resources for labels for single series job/instance target_info

* add otel resources to adhoc variable dropdown

* update otel api to check for standardization and return labels

* label types for api

* check standardization, show otel variable, select depenv, update other variables

* remove otel target list from metric select scene

* load resources if dep_env label has already been selected

* exclude previously used filters

* do not check standardization if there are already otel filters

* drop filters when switching data sources

* add experience var for switching to otel experience

* remove otel from variables and place near settings

* add error for non-standard prom with otel resources

* fix typescript errors, remove ts-ignores

* add custom variable for deployment environment like app-olly

* fix name of otel variable

* add function for getting otel resources from variables

* add otel join query const

* update standard check to be simpler

* allow for unstandard otel data sources but give warning

* add otelJoinQuery to the base query and clean up variables when state changes

* refactor otel functions to return filters for targets, use targets to filter metrics

* update metric names on otel target filter change

* when no otel targets for otel resource filter, show no metrics

* move switch to settings, default to use experience, refactor otel checks

* clean code

* fix refactor to add hasOtelResources for showing the switch in settings

* sort otel resources by blessed list

* reset otel when data source is changed

* move otel experience toggle back outside settings

* move showPreviews into settings

* do not re-add otel resources from blessed list to filters when already selected

* add otel join query variable to histogram base query

* only show settings for appropriate scenes

* show info tooltip the same but show error on hover for disabling otel exp for unstandard DS

* refactor tagKeys and tagValues for otel resources variable, fix promoted list ordering, fix dep env state bug

* default dep env value

* apply var filters only where they are using VAR_FILTER_EXPR in queryies

* change copy for labels to attributes

* do not group_left job label when already joining by job

* update copy for label variable when using otel

* remove isStandard check for now because of data staleness in Prometheus

* default to showing heatmap for histograms

* add trail history for selecting dep env and otel resources

* add otel resource attributes tests for DataTrail

* move otel functions to utils

* write tests for otel api calls

* write tests for otel utils functions

* fix history

* standard otel has target_info metric and deployment_environment resource attributes

* fix tests

* refactor otel functions for updating state and variables

* clean code

* fix tests

* fix tests

* mock checkDataSourceForOtelResources

* fix tests

* update query tests with otelJoinQuery and default to heatmap for _bucket metrics

* fix tests for otel api

* fix trail history test

* fix trail store tests for missing otel variables

* make i18n-extract

* handle target_info with inconsistent job and instance labels

* fix otel copy and <Trans> component

* fix custom variable deployment environment bug when switchiing data sources from non otel to otel

* fix linting error for trans component

* format i18nKey correctly

* clean up old comments

* add frontend hardening for OTel job and instance metric list filtering

* fix test for deployment environment custom variable to use changeValueTo

* fix i18n

* remove comments for fixed bug

* edit skipped tests
2024-09-19 09:34:31 -05:00
Ryan McKinley
542105b680 ResourceClient: Exercise resource client in k8s apis tests (#93473) 2024-09-19 17:16:48 +03:00
linoman
63195664f4 SSO LDAP: Fix ldap provider in providers list (#93472)
* Correct comment about provider filter

* Add type for LDAP provider

* Ignore old LDAP init setup when using SSO
2024-09-19 16:05:55 +02:00
Will Browne
362ffff591 Plugins: Avoid returning 404 for AutoEnabled apps (#93436)
avoid errors for autoenabled apps
2024-09-19 14:00:34 +01:00
Jack Baldry
d5f205fdef Update workflows to use actions that don't need organization secrets (#92603) 2024-09-19 13:53:45 +01:00
Gabriel MABILLE
7ef13497a8 AuthN: Ext JWT support actions (#92486) 2024-09-19 14:25:43 +02:00
Ryan McKinley
1e3816a6f8 K8s/Dashboard: Read DTO from the registered storage, not just legacy (#93406)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-09-19 12:45:32 +03:00
Esteban Beltran
b48f288583 Chore: Change condition to run auto triager based on user association (#93466) 2024-09-19 11:49:54 +03:00
Ryan McKinley
f21a5987a2 Plugins: Expose datasources as apiservers feature toggle (#93250) 2024-09-19 11:28:27 +03:00
Ashley Harrison
73eff837e8 Select: Fix last option in an option group to be selectable (#93457)
don't completely overwrite innerProps
2024-09-19 09:05:23 +01:00
DaRK AnGeL
224e96effa Chore: Add ILS (Israeli New Shekels) currency to value formatter (#93390)
add ILS to Currency
2024-09-19 08:05:28 +02:00
Jean-Philippe Quéméner
4f04b5849e feat(apiserver): add flag to control the request size limit (#93431)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-09-18 20:39:32 +03:00
Torkel Ödegaard
d177e57f7e DashboardScene: Fix url state sync issue when coming form Home dashboard to a cached dashboard scene (#93442)
* DashboardScene: Fixes preserve dashboard state for hidden options

* DashboardScene: Alt fix for pervering only specific url keys

* DashboardScene: Fixes url sync issue when coming from Home route

* Update

* Fix test
2024-09-18 17:57:15 +02:00
ismail simsek
37e4353a18 Chore: Fix running frontend unit tests in JetBrains (#93441)
read the files with their absolute paths
2024-09-18 17:51:58 +02:00
Andreas Christou
6a3dbe7d41 AzureMonitor: Improve resource picker efficiency (#93127)
* Parameterise region building metric namespace URL

- Add parameter for region (this parameter takes precedence over if global is set)
- Update tests
- Support this parameter on the data source method

* Refactor fetchAllNamespaces

- Use Set rather than an array for greater performance
- Request namespaces across WestEurope, EastUS, and JapanEast concurrently
- Update test

* Maintain existing behaviour
2024-09-18 15:17:36 +01:00
Jean-Philippe Quéméner
72bfa624ce fix(apiserver): append errors correctly from options (#93434) 2024-09-18 16:38:59 +03:00
Eric Leijonmarck
6ee7f7dc79 Docs: Add http docs for lbac for datasources (#93399)
* Add: http docs for lbac for datasources

* spelling

* update with only cloud loki

* rename to lbac for datasources

* moved it

* Update _index.md

This commit fixes minor style and punctuation issus

* change datasource to data source

* replace datasource with data source

minor updates and style fixes

* minor style changes

* prettier

---------

Co-authored-by: Irene Rodriguez <irene.rodriguez@grafana.com>
2024-09-18 11:54:21 +01:00
Juan Cabanas
af42f31fe6 ShareDrawer: Update documentation link buttons (#93339) 2024-09-18 11:53:02 +01:00
wt
f7232b997c Dashboards: Fix typo in PublicDashboardNotAvailable component (#93418)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-09-18 12:56:08 +03:00
Alexander Zobnin
3e1fd80831 Docs: Add announcement banners to list of RBAC actions (#93421) 2024-09-18 11:54:11 +02:00
kay delaney
98a4d2858a Dashboards: Fix 'days' unit pluralization (#93326) 2024-09-18 10:00:42 +01:00
Esteban Beltran
eb3f64b3f8 Chore: Fix issue-labeled workflow permission errors (#93417)
* Chore: Fix issue-labeled workflow permission errors

* fix comparison
2024-09-18 11:09:53 +03:00
Gabriel MABILLE
bfb25e33eb RBAC: AccessControlOnCall general availability (#93383)
RBAC: GA accessControlOnCall
2024-09-18 08:58:05 +02:00
Alexander Akhmetov
e59ea00518 Alerting: Add TLS, QoS and retain options to the MQTT receiver (#92331)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Has been cancelled
publish-kinds-next / config (push) Has been cancelled
publish-kinds-next / main (push) Has been cancelled
Trivy Scan / trivy-scan (push) Has been cancelled
2024-09-17 21:11:16 +02:00
Ryan McKinley
b52e6ba552 Chore: Convert tabs to spaces in playlists.cue (#93403) 2024-09-17 20:09:54 +03:00
Yuri Tseretyan
0f788d8d83 Alerting: Support for renaming receivers (#93349)
* update RenameReceiverInNotificationSettings in DbStore to check for provisioning

* implement renaming in receiver service and provisioning

* do not patch route when stitching

* fix bug in stitching because it returned new name but the old one was expected

* update receiver service to always return result converted from storage model this makes sure that UID and version are consistent with GET\LIST operations

* use provided metadata.name for UID of domain model because rename changes UID and request fails

* remove rename guard

* update UI to not disable receiver name when k8s api enabled

* create should calculate uid from name because new receiver does not have UID yet.
2024-09-17 19:07:31 +03:00
linoman
fb0d3b944a SSO LDAP: Fix search base dns parsing (#93179)
* Fix parse of

* Add i18n files

* Add default value

* Replace input field with multiselect

* rename delete form function

* Use Controller for MultiSelect
2024-09-17 17:52:53 +02:00
Matthew Jacobson
1ea873950b Alerting: Reject receiver update in config API when FlagAlertingApiServer enabled (#93300)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
* Reject receiver update in config API when FlagAlertingApiServer enabled
2024-09-17 16:49:17 +03:00
kay delaney
cbf2aa993e LibraryPanels: Fix folderUid nil pointer dereference (#93400) 2024-09-17 13:03:49 +00:00
Oscar Kilhed
4d50cb2b7b Scenes: Ensure scenes dashboards interpolate variables in sql queries the same as old arch (#93270)
Ensure scenes dashboards interpolate variables in sql queries the same as old arch
2024-09-17 13:33:06 +01:00
Levente Balogh
f0ce33e569 Plugin.json schema: Update the meta-info for extensions (#92732)
* feat(plugin.json): update the extensions definition schema

* feat(plugin.json): add `exposedComponents` definition to the dependencies

* feat(plugin.schema.json): add descriptions for the new schema fields

* review: wrap extensions related dependencies

* review: add a pattern for the extension point id

* review: add a min-length to added link & component titles

* add a pattern to the exposed component id
2024-09-17 12:06:23 +00:00
Jean-Philippe Quéméner
10314585ec fix(alerting): extend instant vector check for non-nullable types (#93323) 2024-09-17 13:20:40 +02:00
Misi
41cd0f5180 Auth: Add improvedExternalSessionHandling feature toggle (#93385)
Add improvedExternalSessionHandling feature toggle
2024-09-17 13:54:39 +03:00
Esteban Beltran
43cad93e62 Chore: use github app for issue commands workflow (#93304)
* Chore: use github app for issue commands workflow

* use it in issue-opened too

* update comments and permissions

* use issue app for triager token

* add spaces

* add config as requirement

* only run main if it has secrets

* Check for repository name,

* remove config work

* get secrets after sleep
2024-09-17 12:32:58 +02:00
antonio
aee9458d98 alerting>docs>notification template example (#93330)
* alerting>docs>notification template example

* all pretty no pity

* Update docs/sources/alerting/configure-notifications/template-notifications/create-notification-templates.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/configure-notifications/template-notifications/create-notification-templates.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/configure-notifications/template-notifications/create-notification-templates.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/configure-notifications/template-notifications/create-notification-templates.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* replaced future tense

* pretty

---------

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2024-09-17 10:27:44 +00:00
Artur Wierzbicki
1782b3dd39 Chore: Add update-workspace to build-go deps (#93386)
* Revert "Chore: Remove update-workspace from build-go deps (#93352)"

This reverts commit 8a712fd510.

* workspace update changes
2024-09-17 12:47:00 +03:00
Jan-Otto Kröpke
e2bce38a79 App Plugins: Allow resource handle to define Cache-Control Header (#92559) 2024-09-17 10:28:38 +02:00
Matheus Macabu
4f21ecf982 CloudMigrations: improve nil handling (#93257)
* CloudMigrations: fail token decryption if session is not found or without a token

* CloudMigrations: do not report event if session is nil
2024-09-17 08:59:47 +02:00
Ieva
f72401e23b Docs: Add a doc page for RBAC for app plugins (#93274)
Some checks failed
publish-technical-documentation-next / sync (push) Has been cancelled
Sync to mirror / trigger_downstream_patch_mirror (push) Has been cancelled
add a doc page for RBAC for app plugins
2024-09-16 10:14:52 +01:00
Todd Treece
d1ffcc22d9 Playlists: Migrate to App SDK codegen (#93246)
Some checks failed
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
golangci-lint / lint-go (push) Has been cancelled
Crowdin Upload Action / upload-sources-to-crowdin (push) Has been cancelled
publish-kinds-next / config (push) Has been cancelled
publish-kinds-next / main (push) Has been cancelled
publish-technical-documentation-next / sync (push) Has been cancelled
Sync to mirror / trigger_downstream_patch_mirror (push) Has been cancelled
Trivy Scan / trivy-scan (push) Has been cancelled
/ Alerting Swagger spec generation cron job (push) Has been cancelled
2024-09-13 16:27:40 -04:00
Todd Treece
8a712fd510 Chore: Remove update-workspace from build-go deps (#93352) 2024-09-13 14:09:09 -06:00
Todd Treece
80795fcfd5 Aggregator: Add README and example query (#93351) 2024-09-13 22:55:26 +03:00
Andrew Hackmann
3df62c28bb InfluxDB: Add Influx to check if series need to be fixed labels (#93299)
add influx to check if series need to be fixed labels
2024-09-13 14:05:15 -05:00
Matthew Jacobson
3bf77d2e05 Alerting: Include in-use metadata in k8s receiver LIST & GET (#93016)
* Include in-use metadata in k8s receiver List & Get
2024-09-13 20:20:09 +03:00
Matthew Jacobson
bd9fc8127b Alerting: Fix config api POST provenance guard (#93244)
* Add failing tests

* Fix bug in provenance guard on renaming receivers or moving integrations

* Linting
2024-09-13 12:42:33 -04:00
renovate[bot]
a5c122af78 Update dependency msw to v2.4.6 2024-09-13 16:06:46 +00:00
Juan Cabanas
683dbcf57c ShareDrawer: Flaky test fixed (#93345) 2024-09-13 19:04:52 +03:00
Will Browne
ffbf6cf72d Plugins: Add test case for relative parent directory path (#93338)
add case for testing relative path
2024-09-13 18:30:19 +03:00
brendamuir
bb923db279 Alerting docs: improve alert rule definitions (#93321)
* Alerting docs: improve alert rule definitions

* more edits

* corrects numbering
2024-09-13 17:29:48 +02:00
renovate[bot]
7ea2410272 Update dependency @grafana/faro-web-sdk to v1.10.0 (#93335)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-13 16:25:58 +01:00
Gilles De Mey
70b5bd609c Alerting: Update rules empty state CTA (#93276) 2024-09-13 18:21:17 +03:00
Victor Marin
a214fbd7cf Fix panels in rows stuck in loading (#93168)
* Fix panels in rows stuck in loading

* fix

* fix + tests

* force reperform in case All value is selected and actual options change

* bump scenes so tests pass

* redo yarn.lock

* redo yarn.lock
2024-09-13 17:51:12 +03:00
oscarkilhed
ad6cd55301 update tests to include Selected (x) in variable multi select boxes 2024-09-13 17:32:52 +03:00
renovate[bot]
1641570c3e Update dependency @grafana/scenes to v5.14.7 2024-09-13 17:32:52 +03:00
Josh Hunt
9fbd05773a Chore: Clean up old API methods in manage-dashboards/actions (#93329)
Chore: Deprecate createFolder() function, and remove other unused functions
2024-09-13 17:11:41 +03:00
Juan Cabanas
c56870e511 ShareDrawer: Test coverage (#93111) 2024-09-13 11:01:21 -03:00
renovate[bot]
c87b3c4bbf Update dependency @grafana/faro-core to v1.10.0 (#93319)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-13 13:56:57 +01:00
Tom Ratcliffe
f9796f05fe Alerting: Fix sending secure settings when using k8s API (#93320)
Some checks failed
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
2024-09-13 15:01:05 +03:00
Carl Bergquist
56616e69a1 scopes: sort scope dashboard bindings on dashboard title (#93305)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2024-09-13 07:51:08 -04:00
Sonia Aguilar
d28e76e93b Alerting: Show a warning when contact point has not receivers in it (#93318)
Show a warning when contact point has not receivers in it
2024-09-13 14:40:52 +03:00
Sonia Aguilar
8a743b2e2f Alerting: Fix reseting secure fields (#93278)
fix reseting secure fields
2024-09-13 13:33:26 +02:00
renovate[bot]
48dd1af524 Update dependency knip to v5.30.2 2024-09-13 11:33:11 +00:00
renovate[bot]
cbe850b558 Update dependency rudder-sdk-js to v2.48.18 2024-09-13 11:05:56 +00:00
renovate[bot]
dc2a777edb Update dependency @types/jest to v29.5.13 2024-09-13 10:27:38 +00:00
Sonia Aguilar
be4798096a Alerting: Fix incorrect warning for OnCall integration (#93085)
Remove warning when geting oncall metadata

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2024-09-13 11:59:00 +02:00
renovate[bot]
1783b47545 Update dependency eslint-plugin-react to v7.36.1 (#93255)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-13 10:46:49 +01:00
Raiko Wielk
c539e3627c Docs: Fix broken links in contribute/backend/README.md (#92261)
Co-authored-by: Dave Henderson <dhenderson@gmail.com>
2024-09-13 12:34:31 +03:00
hemerfaSICKAG
d54ede607c Update playlist.md to align with Grafana 11 (#92884)
Co-authored-by: Irene Rodriguez <irene.rodriguez@grafana.com>
2024-09-13 08:59:20 +00:00
Ashley Harrison
161d452841 Chore: Type improvements (#93267)
* some type fixes + ignore graveyard folder

* few more fixes

* remove comment

* ignore global styles

* few more type fixes
2024-09-13 09:50:55 +01:00
Piotr Jamróz
3514504240 Tracing: Remove redundant types (#91835)
* Display event name of a span

* Clean up

* Retrigger the build

* Show colon only when there are fields to display

* Rollback

* Use event name when exporting to OTLP

* Allow filtering spans by event name

* Remove redundant types

* Remove redundant TraceLog

* Update betterer report
2024-09-13 10:05:37 +02:00
Erik Sundell
8c702d4a6b Plugin extensions: Make sure core features use new hooks (#92723)
* use new extensions APIs across grafana core

* setup setPluginLinksHook

* fix tests

* fix mock

* fix more broken tests

* use plugin components hook

* remove unused func

* fix tests

* remove unused import
2024-09-13 09:23:18 +02:00
Andres Martinez Gotor
01a4e6b9af Remove the need for plugins to implement AdmissionHandler for v0alpha1 (#93272) 2024-09-13 09:08:26 +02:00
Kevin Minehart
d60a28b3c8 CI: Update grafanabot github token (#93291)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Update `make docs` procedure / main (push) Has been cancelled
Run dashboard scenes e2e / dashboard-scenes-e2e (push) Has been cancelled
Update grafanabot github token
2024-09-12 14:37:30 -05:00
Matthew Jacobson
ff6a20f54a Alerting: Include access control metadata in k8s receiver LIST & GET (#93013)
* Include access control metadata in k8s receiver List & Get

* Add tests for receiver access

* Simplify receiver access provisioning extension

- prevents edge case infinite recursion
- removes read requirement from create
2024-09-12 20:57:53 +03:00
Matthew Jacobson
0aa87fd1d4 Alerting: Fix DashboardUID typo in json provisioning api (#65143)
* Alerting: Fix dasboardUid typo in json provisioning api

The json tag for DashboardUID was incorrectly set to dasboardUid in the provisioning api. This change fixes the typo while keeping backwards compatibility for the typo.

* Add alerting-squad as CODEOWNER for services/provisioning/alerting
2024-09-12 20:44:03 +03:00
maicon
d1d578785c Add remaining k8s endpoints for Folders (#93146)
* Add remaining Folders k8s endpoints

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>

* Remove duplicated import

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>

---------

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
2024-09-12 14:38:27 -03:00
Yuri Tseretyan
f8fa5286a1 Alerting: Introduce alert rule models in storage (#93187)
* introduce storage model for alert rule tables
* remove AlertRuleVersion from models because it's not used anywhere other than in storage
* update historian xorm store to use alerting store to fetch rules

* fix folder tests

---------

Co-authored-by: Matthew Jacobson <matthew.jacobson@grafana.com>
2024-09-12 13:20:33 -04:00
Ashley Harrison
0a976f831c Breadcrumbs: Tweak padding so they remain equally spaced (#93284)
tweak breadcrumb padding so it's equally spaced
2024-09-12 19:24:52 +03:00
Drew Slobodnjak
e6f359f90b Transformations: Binary operation on all numbers (#92172)
* Transformations: Binary operation on all numbers

* Handle replaceFields option

* Change left clear out to string

* Handle time field

* Fix filtering

* Update new field names to remove double space

* Add tests

* Add BinaryValue interface and update editor

* Fix initial behavior

* Rollback rendering standards

* Add ctx interpolate

* Fix fixed value variable

* Add function to convert old binary value type

* Update tests for new structures

* Add bullet for all number field option

* baldm0mma/run content build script

* Disable alias control for type matching
2024-09-12 08:50:23 -07:00
Ashley Harrison
dceba35a55 Portal: Fix positioning when bodyScrolling is disabled (#93277)
fix portal when bodyScrolling is disabled
2024-09-12 16:24:36 +01:00
Laura Fernández
2a8f6755d5 Search: add folders and subforders to search info (#93177) 2024-09-12 17:20:54 +02:00
Alexa V
22fe575925 Dashboard Scene: Fix issue for Dashboard Datasource and library panel (#93220) 2024-09-12 16:49:22 +02:00
William Wernert
efe62086f9 Alerting: Add type label rule_group_rules metric (#91425)
* Add group and type labels to rule_group_rules metric

* Don't include group to avoid high cardinality

* Add comments

* Reset rule_group_rules before recording new values

* Edit description for rule_group_rules

* Include ruleGroup combo key in labels

* Fix lint
2024-09-12 17:27:09 +03:00
Ryan McKinley
45eb72e95a K8s: Use wire to initalize the resource client (#93221) 2024-09-12 17:22:27 +03:00
brendamuir
85fbc8e8e5 Alerting docs: some edits to recording rules (#93260)
* Alerting docs: some edits to recording rules

* ran prettier

* removes refs

* fixes link

* fixing links

* corrects typo

* removes type step

* corrects typo
2024-09-12 14:00:12 +00:00
Jean-Philippe Quéméner
eabf3b9f73 feat(alerting): add support for query service instant vectors (#92091) 2024-09-12 15:33:00 +02:00
colin-stuart
04d9fa04a7 Auth: Prevent scheduled token rotation jobs with large delay from rolling back to 1 ms (#93242)
Auth: prevent scheduled token rotation jobs with large delay from rolling back to 1 ms
2024-09-12 09:21:30 -04:00
Tom Ratcliffe
03c48844dd Chore: Remove MSW worker from source control and rely on installation instead (#93268) 2024-09-12 16:03:50 +03:00
Will Browne
3f8d127410 Plugins: Ensure only updateable plugins can be updated via the UI (#93205)
* only updateable plugins can be updated via the UI

* add missing state

* Apply levi brains

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

* apply same style throughout

---------

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
2024-09-12 13:51:50 +01:00
Raiko Wielk
3d9ae801cb Docs: Fix broken links in contribute/**/*.md (#92182)
Co-authored-by: Dave Henderson <dhenderson@gmail.com>
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-09-12 15:51:30 +03:00
Esteban Beltran
1c84e76d32 Triager: Add area/query-library to commands.json (#92963) 2024-09-12 14:46:45 +02:00
Arati R.
b918739a98 K8s/Folders: Add basic folder integration tests (create, read) (#93232)
* Add initial folder tests
* Add test for get/reading folders
* Compare legacy and k8s create and read
* Remove dependency on grafanaAPIServerWithExperimentalAPIs
2024-09-12 14:36:46 +02:00
Carl Bergquist
350c227da6 Scopes: Add more logging in custom handler (#93263)
scope api:add more logging in custom handler

Signed-off-by: bergquist <carl.bergquist@gmail.com>
2024-09-12 15:03:16 +03:00
Jack Westbrook
29243658ce Performance: Code split login page (#92704)
feat(frontend): lazy load login page
2024-09-12 14:01:08 +02:00
Bogdan Matei
2a2813b577 Scopes: Reload dashboards when on scopes change (#92804) 2024-09-12 13:58:45 +02:00
grafana-pr-automation[bot]
ce7533eb3b I18n: Download translations from Crowdin (#93211)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-09-12 13:20:22 +03:00
brendamuir
98f766a50d Alerting docs: adds recording rule info (#93204)
* Alerting docs: adds recording rule info

* ran prettier

* Updates with feedback from pepe and removes external reference

* couple of minor edits

* removes reference

* feedback from sonia

* adds links per gilles

* adds correct version link
2024-09-12 12:06:23 +02:00
renovate[bot]
bc0d4f9903 Update dependency @grafana/aws-sdk to v0.4.2 (#93253)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-12 10:23:41 +01:00
renovate[bot]
be0f2a131a Update dependency type-fest to v4.26.1 (#93238)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-12 09:33:53 +01:00
linoman
785240d51c SSO LDAP: Add LDAP to providers list (#93120)
* Add LDAP to providers list

* fix bug when there are no group mappings
2024-09-12 10:31:24 +02:00
Tito Lins
a910188675 Replace prom MustRegister with Register (#92725) 2024-09-12 10:24:12 +02:00
janlugt
9d6935388c Notifications: Add Message-ID header to outgoing emails (#83752)
* Add Message-ID header to outgoing emails

* change message-id format

* parse adddresses with name
2024-09-12 03:58:06 +00:00
Faye Lin
634d590cf1 Search: Fix a bug when searching folders under the general folder (#91042)
* fix: search returns all folders when folder uid is general
* test: add unit test for FolderUIDFilter when NestedFolders is enabled
2024-09-12 05:55:28 +02:00
renovate[bot]
b5dd8a5e89 Update dependency sass to v1.78.0 (#93237)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Has been cancelled
Trivy Scan / trivy-scan (push) Has been cancelled
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-11 17:25:03 +01:00
renovate[bot]
14e29247aa Update dependency rc-tree to v5.9.0 (#93235)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-11 17:00:05 +01:00
Ieva
700636b3b9 RBAC: Hide the root level dashboard creation button from users who can't create dashboards on root level (#92942)
hide the root level dashboard creation button from users who can't create dashboards on the root level
2024-09-11 16:40:08 +01:00
Isabel Matwawana
1f7ebde0de Revert "move Search page to Dashboards category" (#93234) 2024-09-11 11:12:24 -04:00
renovate[bot]
d0e2ab642c Update dependency @grafana/plugin-e2e to v1.8.0 (#93228)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-11 15:34:04 +01:00
Esteban Beltran
7b69d5b44f Add missing permissions for auto-triage bot (#93230) 2024-09-11 16:51:15 +03:00
Will Browne
0469b0f52e Plugins: Ensure fetch loading strategy cases for nested plugins (#93209)
* fix

* fix func name
2024-09-11 16:35:13 +03:00
Andreas Christou
f5926af99a InfluxDB: Update macro regexp (#93040)
Update macro and tests
2024-09-11 14:26:09 +01:00
Raiko Wielk
9d5f8e2998 Docs: Fix broken link in contribute/backend/README.md (#92103)
Co-authored-by: Dave Henderson <dhenderson@gmail.com>
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-09-11 14:18:56 +01:00
Brendan O'Handley
d41ee6bbc3 Explore metrics: Fix long metrics and labels in landing page (#92443)
* word wrap long metric names

* trunctate long labels

* use css for filters
2024-09-11 08:17:41 -05:00
renovate[bot]
ff5ed75ea9 Update dependency @grafana/scenes to v5.14.3 2024-09-11 13:13:25 +00:00
Leon Sorokin
77eefcbc4c XYChart: Avoid tick collisions on x-axis (#93195) 2024-09-11 08:10:30 -05:00
Ashley Harrison
766e256c5c Chore: Update mockServiceWorker version (#93223)
update version
2024-09-11 16:06:04 +03:00
Todd Treece
b4918f40c4 Chore: Update plugin SDK to v0.248.0 (#93217) 2024-09-11 15:17:29 +03:00
Gilles De Mey
90ee52e8d9 Alerting: New search UI – Part 1 (#91620) 2024-09-11 14:29:26 +03:00
Esteban Beltran
05023d9d31 Enable auto-triager to automatically add labels to community issues (#93206)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
* Chore: Enable auto-triager to set labels

* pass the correct token to add labels
2024-09-11 12:53:16 +02:00
Irene Rodriguez
900608b50b Update admonition to show differences across plans (#93202)
As per https://github.com/grafana/support-escalations/issues/11312#issuecomment-2342024943, this PR updates the admonition to reflect that some features such as branding are not available for all plans.
2024-09-11 11:26:42 +01:00
Hugo Kiyodi Oshiro
ecd1a6e421 Plugins: Fix plugins count in update all plugins button (#93126)
* Plugins: Fix plugins count in update all plugins button

* Plugins: Fix new updates filter

* Plugins: Update tests
2024-09-11 12:12:06 +02:00
renovate[bot]
b18593ca4e Update dependency msw to v2.4.5 (#93161)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-11 11:03:29 +01:00
Daniel Strobusch
748425cd66 [docs] remove misplaced heading. (#93166) 2024-09-11 12:59:29 +03:00
Laura Fernández
902c658c9a POC: Refresh footer on SaveDashboardAsForm when title and folder data change by the user (#92330) 2024-09-11 11:51:48 +02:00
Yulia Shanyrova
f88571c2e7 Plugins: Plugin details right panel UI improvements (#93171)
* UI improvements WIP

* change links appearance and layout for plugin details right panel

* Changed external links back

* Update public/app/features/plugins/admin/components/PluginDetailsRightPanel.tsx

Co-authored-by: David Harris <david.harris@grafana.com>

* Update public/locales/en-US/grafana.json

Co-authored-by: David Harris <david.harris@grafana.com>

* fix report abuse to report concern

---------

Co-authored-by: David Harris <david.harris@grafana.com>
2024-09-11 11:44:16 +02:00
Ryan McKinley
7efadb0a00 Testing: Integration tests for unified-grpc start a local gRPC server (#93201) 2024-09-11 11:50:14 +03:00
grafana-pr-automation[bot]
91c3e3478a I18n: Download translations from Crowdin (#93185)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-09-11 09:32:21 +01:00
Ashley Harrison
79a86b9e6a Chore: Improve typings (#93180)
* fix some any's/type assertions

* fix some more any/type assertions
2024-09-11 09:30:33 +01:00
Alex Khomenko
25ebb5b76f Users/teams: Update to be compatible with react router 6 (#93163)
* UserCreatePage: Make compatible with react router 6

* ServiceAccountPage.test: Make compatible with react router 6

* Update TeamPages
2024-09-11 10:02:11 +03:00
Yuri Tseretyan
cb372d3fa8 Alerting: Support secrets in contact points nested fields (#92035)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
Back-end:
* update alerting module
* update GetSecretKeysForContactPointType to extract secret fields from nested options
* Update RemoveSecretsForContactPoint to support complex settings
* update PostableGrafanaReceiverToEmbeddedContactPoint to support nested secrets
* update Integration to support nested settings in models.Integration
* make sigv4 fields optional

Front-end:
* add UI support for encrypted subform fields
* allow emptying nested secure fields
* Omit non touched secure fields in POST payload when saving a contact point
* Use SecretInput from grafana-ui instead of the new EncryptedInput
* use produce from immer
* rename mapClone
* rename sliceClone
* Don't use produce from immer as we need to delete the fileds afterwards

---------

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
Co-authored-by: Sonia Aguilar <soniaaguilarpeiron@gmail.com>
Co-authored-by: Matt Jacobson <matthew.jacobson@grafana.com>
2024-09-10 22:26:23 -04:00
Juan Cabanas
78ce9b8f39 ShareDrawer: Remove URL param in share externally cancel (#93191) 2024-09-10 17:48:45 -03:00
Isabel Matwawana
1c52d7b994 Docs: Update forward direction search for Loki entry (#92875) 2024-09-10 16:48:32 -04:00
Leon Sorokin
e9901acfb4 TimeSeries: Increase y-axis tick density for small-height panels (#93188) 2024-09-10 15:20:24 -05:00
Juan Cabanas
afe457306a ShareDrawer: Change alert texts (#93184) 2024-09-10 17:11:54 -03:00
Andreas Christou
00ace4678c GCM: Add errorsource (#92151)
* Add errorsource

* Minor lint fixes
2024-09-10 19:34:20 +01:00
Oscar Kilhed
acbd50c7d6 GrafanaUI: Add select all toggle to selectbox (#92483)
* Add select all toggle
2024-09-10 20:33:17 +02:00
Ryan McKinley
d724d463b1 DualWriter: Add mode 5 that always uses storage (#93169)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-09-10 13:07:06 -04:00
Gilles De Mey
c8dc4d93d4 Alerting: Rename list view section titles (#93182)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-09-10 19:31:11 +03:00
Gabriel MABILLE
697afc71b4 RBAC: FIX Allow specifying several valid scopes for a kind (#93176)
* PermRegistry: Fix regression with actions applying to multiple scopes

* Add tests

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

---------

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2024-09-10 17:22:40 +01:00
Irene Rodriguez
3f9227183d move Search page to Dashboards category (#92968)
* move Search page to Dashboards category

* fix Vale suggestions

* Update docs/sources/dashboards/search/_index.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

---------

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-09-10 18:14:11 +02:00
Joao Silva
15bf1348ab GrafanaUI: Show focus on selected date of the date picker (#93181) 2024-09-10 16:51:53 +01:00
linoman
56f361198c SSO LDAP: Adjust button behavior (#93173)
* Extract getSettings behaviour

* Replace string values format

* Reload settings

* Add new option to discad settings

* update i18n files

* run frontend linter
2024-09-10 18:06:40 +03:00
Matthew Jacobson
eea28172e0 Alerting: Add field selectors for k8s receivers API (#93015)
Add field selectors for k8s receivers API

metadata.provenance
spec.title
2024-09-10 10:58:14 -04:00
Adela Almasan
f64b121ddb Canvas: Allow API calls to grafana origin (#91822)
* allow post URL
* check for config
* allow relative paths
* add allowed internal pattern; add checks for method
* update defaults.ini
* add custom header
* update config comment
* use globbing, switch to older middleware - deprecated call
* add codeowner
* update to use current api, add test
* update fall through logic

* Update pkg/middleware/validate_action_url.go

Co-authored-by: Dan Cech <dcech@grafana.com>

* Update pkg/middleware/validate_action_url.go

Co-authored-by: Dan Cech <dcech@grafana.com>

* add more tests

* Update pkg/middleware/validate_action_url_test.go

Co-authored-by: Dan Cech <dcech@grafana.com>

* fix request headers

* add additional tests for all verbs

* fix request headers++

* throw error when method is unknown

---------

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Brian Gann <bkgann@gmail.com>
Co-authored-by: Brian Gann <briangann@users.noreply.github.com>
Co-authored-by: Dan Cech <dcech@grafana.com>
2024-09-10 10:45:27 -04:00
Esteban Beltran
462560d544 Chore: Only auto-triage issues for authors non associated to the repository (#93174)
Only triage issues for authors non associated to the repository
2024-09-10 16:29:58 +02:00
Tobias Skarhed
096105fed6 New Select: Try it out with some core components (#92826)
* Export Combobox and add portalling

* Use floatingui fixed strategy and fix z-index

* Check non null

* Make value string type only

* Try with fiscal year setting

* Use combobox for WeekStartPicker

* Improve screen reader handling

* Fix faulty import

* Fix type issue

* Fix failing tests and export unstable

* Rename option and remove export

* Use comboboxMockSetup function

* Add support for number type

* menuClosed styles to emotion
2024-09-10 17:28:00 +03:00
Aaron Godin
2c93120a42 feat: add QueryIntWithDefault to web context (#93130) 2024-09-10 09:04:49 -05:00
Ryan McKinley
22c63ea3c5 DualWriter: remove mode4 wrapper (#93172) 2024-09-10 16:01:14 +03:00
Ryan McKinley
2f792ee4ae DualWriter: Return error for unsupported watch (#93159) 2024-09-10 15:42:17 +03:00
Jack Westbrook
e3fd9f9e58 Fix: Resolution of css for plugins using loadPluginCSS (#93128)
* fix(plugins): resolve loadPluginCss urls for filesystem and cdn hosted plugins

* fix(plugins): should a registry lookup fail in getLoadPluginCssUrl fallback to relative path

* refactor(plugins): rename var to id for legibility

* test(plugins): add some extra test cases for getLoadPluginCssUrl function
2024-09-10 14:35:21 +02:00
Laura Fernández
1701dc85e7 A11y: Focus outline is not fully visible in several areas of the application (#93030) 2024-09-10 13:50:12 +02:00
Gábor Farkas
c48caf0921 logging: log plugin request start (#92925)
log plugin request start
2024-09-10 13:25:50 +02:00
Ryan McKinley
9210414782 K8s: support unstructured spec+status mutation with GrafanaMetaAccessor (#92970) 2024-09-10 13:32:18 +03:00
renovate[bot]
86b9f76291 Update dependency knip to v5.30.1 (#93155)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-10 11:23:09 +01:00
grafana-pr-automation[bot]
3278ab543b I18n: Download translations from Crowdin (#92834)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-09-10 11:22:44 +01:00
Leonor Oliveira
8d2b8378ed Remove UID on update in dual writer mode 2 (#93032)
* Remove UID on update in dual writer mode 2

* WIP: add dashboard tests

* Add more crud tests for dashboards in each mode

* trigger build

* Fix test
2024-09-10 11:57:28 +02:00
Arati R.
b12a29a1da K8s: Implement partial folders api with k8s client (#93089)
* Add kubernetes folder feature toggle
* Add kubernetes routes for getting and creating a folder
* Add documentation for interacting with k8s folders
2024-09-10 11:22:08 +02:00
Ashley Harrison
442bb1d35f Internationalization: make i18nKey required in grafana-ui as well (#93154)
make i18nKey required in grafana-ui as well
2024-09-10 12:20:30 +03:00
Eric Leijonmarck
f3ede1f53d Datasources: allow for query but with warning (#93091)
allow for query but with warning
2024-09-10 10:19:02 +01:00
renovate[bot]
544dbce708 Update dependency i18next to v23.15.1 (#93153)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-10 12:14:28 +03:00
Jay
c4e0baa95f Update _index.md (#92790)
Update to explain grafana_net is older and grafana_com is the preferred config name. However, grafana_net config is still accepted and parsed to grafana_com config.
2024-09-10 09:06:13 +00:00
renovate[bot]
691f93b204 Update dependency re-resizable to v6.9.18 2024-09-10 08:52:38 +00:00
Ieva
3197c5de8d RBAC: Add available scopes to RBAC docs (#93131)
* update the list with some allowed RBAC scopes

* extend the http api docs as well

* display without bulletpoints

* add prettier ignores
2024-09-10 08:50:03 +00:00
Levente Balogh
831493278f UI Extensions: Share the registries using a React context (#92014)
* feat: add a context for the extension registries

* feat: add a provider for registries to `AppWrapper`

* feat(extensions): add a read-only registry version

* feat: share the registry for exposed components using the context

* fix: tests

* feat: share the registry for added components using the context

* feat: share the addedLinks registry using react context

* use read-only registry versions
2024-09-10 10:42:07 +02:00
renovate[bot]
9255230d02 Update dependency @playwright/test to v1.47.0 (#93138)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-10 09:30:22 +01:00
Pepe Cano
7eb7b51dce Docs: update IAM links for Cloud docs (#93147)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-09-10 09:33:45 +02:00
Jack Baldry
639b1319fd Use Docker Compose V2 if available but fall back to V1 with warning (#93082) 2024-09-10 07:36:41 +01:00
Ryan McKinley
aac66e9119 Slugs: use shorter slug fallback (#93081) 2024-09-10 09:04:23 +03:00
Leon Sorokin
f650a17030 Transformations: Fix inner join by field for zero-length frames (#93144) 2024-09-09 21:22:03 -05:00
Juan Cabanas
644a315667 ShareDrawer: Improvements (#93107)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-09-09 19:32:45 -03:00
Señor Performo - Leandro Melendez
40b5c30b94 docs: Update Gauges adding why, how with data reqs and images (#92451)
Co-authored-by: Drew Slobodnjak <60050885+drew08t@users.noreply.github.com>
Co-authored-by: Isabel Matwawana <isabel.matwawana@grafana.com>
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-09-09 16:24:50 -04:00
renovate[bot]
baa0f073d8 Update dependency eslint-plugin-jest to v28.8.3 2024-09-09 20:08:40 +00:00
renovate[bot]
1e6735706d Update dependency @types/node to v20.16.5 2024-09-09 19:39:19 +00:00
Alyssa (Bull) Joyner
0049e4f997 Add basic logs enabled check (#92324) 2024-09-09 13:35:56 -06:00
renovate[bot]
951f676ac8 Update dependency @grafana/plugin-e2e to v1.7.2 2024-09-09 18:50:49 +00:00
Leon Sorokin
53e59b27cd FieldColor: Prefer displayName for hashing (#93062)
* FieldColor: Prefer displayName for hashing
2024-09-09 17:58:22 +00:00
Ashley Harrison
a6e2962319 update mock to work with react-virtual 2024-09-09 19:19:30 +03:00
renovate[bot]
b5d218e06e Update dependency @grafana/scenes to v5.14.2 2024-09-09 19:19:30 +03:00
Aaron Godin
6ded6a8872 feat: Add feature toggle for groupAttributeSync (#93116)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Has been cancelled
2024-09-09 10:29:43 -05:00
Andreas Christou
11c1af0c5f AzureMonitor: Remove Basic Logs retention warning (#92870)
Remove retention warning
2024-09-09 16:15:55 +01:00
Joao Silva
94068977f5 GrafanaUI: Improve Switch cursor focus on screen readers (#93100) 2024-09-09 16:06:05 +01:00
Esteban Beltran
0fb2eacba1 Chore: Move auto-triager workflow to issue-opened workflow file (#93101)
* move auto-triager to issue-opened workflow

* remove autotriager from codeowners
2024-09-09 16:44:01 +02:00
linoman
904b0a9ee6 SSO LDAP: Fix documentation render (#93041)
* Fix documentation link render

* Add i18n changes
2024-09-09 16:32:23 +02:00
Adela Almasan
af48d3db1e Canvas: Add actions support (#90677)
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2024-09-09 09:11:55 -05:00
Kyle Brandt
b89f3f8115 Ad-Hoc Filters & Scopes: don't remap one-of to regex in frontend (#92995)
* send "one-of" and "not-one-of" directly to datasource (instead of changing them to regex)
* Added to Ad-hoc and and Scope Filters: The "values" prop ([]string) and the "one-of" and "not-one-"of" operators. "values" is used with one-of and not-one-of. 
* adds prometheus support for the above 


---------

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Todd Treece <todd.treece@grafana.com>
2024-09-09 16:56:43 +03:00
Andreas Christou
9c7029fa3e Azure: Upgrade grafana-azure-sdk-go (#93009)
* Upgrade grafana-azure-sdk-go

* Run update-workspace

* Update go work

* Fix deps

* Update go.sum
2024-09-09 16:44:35 +03:00
Oscar Kilhed
c0df15dcde InfluxDB: Fix variable interpolation in influx db (#92988)
Fix variable interpolation in influx db
2024-09-09 15:35:30 +02:00
Ashley Harrison
58907a8464 i18n: Add test to check languages match a canonical locale (#93105)
add test to check languages match a canonical locale
2024-09-09 14:25:49 +01:00
Alex Khomenko
2585c58dd4 OptionsUI: Change owners to dashboard squad (#92592)
* OptionsUI: Change owners to dashboard squad

* Update .github/CODEOWNERS

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

---------

Co-authored-by: Alexa V <239999+axelavargas@users.noreply.github.com>
2024-09-09 16:21:05 +03:00
Alex Khomenko
7e4500c7c9 Dashboards: Update tests to be compatible with react router 6 (#93080)
* Dashboards: Update tests to be compatible with react router 6

* Update VersionsSettings.test

* Update DashboardGrid.test

* Update TimeSrv.test

* Remove redundant mock

* Update PublicDashboardListTable.test

* Update PlaylistEditPage.test

* Revert TimeSrv changes
2024-09-09 16:03:57 +03:00
Andreas Christou
4ab61cea0e MSSQL: Add errorsource (#92152)
* Add errorsource to mssql

* Fix args

* Use fmt.Errorf
2024-09-09 14:02:09 +01:00
Tom Ratcliffe
ef486133c2 Alerting: Make query wrapper match up datasource UIDs if necessary (#93057) 2024-09-09 14:01:46 +01:00
Polidoro-root
3fde6bd730 I18n: Add constants value tests to avoid typos (#93070) 2024-09-09 15:49:47 +03:00
Claudiu Dragalina-Paraipan
3aeb8d390e [authn] update authlib and claims versions (#93098)
* update authlib version to latest

* make update-workspace -- 2nd run

* manual cleanup of old version
2024-09-09 15:45:59 +03:00
Andrej Ocenas
5e2ac24890 Sidecar: Add split view and basic APIs for extensions (#91648)
* Add split view and basic APIs to extensions

* Add comments

* Update public/app/AppWrapper.tsx

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

* Moved the .grafana-app element and deduplicate some code

* Remove the provider variants of usePluginLinks/Components

* Change buildPluginSectionNav

* Update comment

* Use eventBus

* Remove non existent exports

* refactor: use a sidecar service to encapsulate the state

* Don't wrap single app in split wrapper

* Use hook splitter

* Remove inline styles

* Type the style props from useSplitter

* Move the overflow style changes to appWrapper

* Deduplicate some common top level providers

* Move modals

* Move routes wrappers to it's own file

* Use better css and add comments

* Remove query rows app extension point

* Fix test

---------

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
2024-09-09 14:45:05 +02:00
Ieva
ba9f1da28e Data sources: Hide the datasource redirection banner for users who can't interact with data sources (#92886)
* hide the datasource redirection banner for users who can't list data sources

* readding explore evaluation

* add a test
2024-09-09 14:50:09 +03:00
ismail simsek
6548ea377d Chore: Bump grafana-plugin-sdk-go version to v0.247.0 (#93095)
* Bump grafana-plugin-sdk-go version to v0.247.0

* make update-workspace

* make update-workspace
2024-09-09 14:36:59 +03:00
Gábor Farkas
7afe6d7023 CODEOWNERS: improve ownership of query apis (#93087) 2024-09-09 14:31:05 +03:00
ismail simsek
5ecc927f08 Explore Metrics: Skip DataTrailsHistory tests (#93096)
* Fix tests

* Skip tests

* revert the change
2024-09-09 14:10:36 +03:00
Alex Khomenko
adf1402ff8 Grafana/ui: Update Link component to react router 6 (#92976)
* Grafana/ui: Update Link component to react router 6

* Add compat package to grafana/ui
2024-09-09 13:54:43 +03:00
Will Browne
2c47d246fc Plugins: Introduce LoadingStrategy for frontend loading logic (#92392)
* do it all

* feat(plugins): move loadingStrategy to ds pluginMeta and add to plugin settings endpoint

* support child plugins and update tests

* use relative path for nested plugins

* feat(plugins): support nested plugins in the plugin loader cache by extracting pluginId from path

* feat(grafana-data): add plugin loading strategy to plugin meta and export

* feat(plugins): pass down loadingStrategy to fe plugin loader

* refactor(plugins): make PluginLoadingStrategy an enum

* feat(plugins): add the loading strategy to the fe plugin loader cache

* feat(plugins): load fe plugin js assets as script tags based on be loadingStrategy

* add more tests

* feat(plugins): add loading strategy to plugin preloader

* feat(plugins): make loadingStrategy a maybe and provide fetch fallback

* test(alerting): update config.apps mocks to include loadingStrategy

* fix format

---------

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2024-09-09 10:38:35 +01:00
Andreas Christou
d61530941a AzureMonitor: Add errorsource (#92094)
* Add errorsource

* Migrate to individually build metric queries

* Migrate logs queries to be built individually

* Migrate to individually build resource graph queries
2024-09-09 10:29:35 +01:00
Victor Marin
8eb7e55f8f DashboardScenes: Fix duplicate query modifying original query on panel duplication (#93038)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
make sure queries are cloned on panel duplicate
2024-09-09 10:09:22 +03:00
Leon Sorokin
fc4b3a2b03 Prometheus: Retain time field's interval with Table formatted queries (#93065)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-09-08 13:18:58 -05:00
Pepe Cano
c43bd82c92 IAM Docs: replace relref with refs links to enable IAM docs in Grafana Cloud docs (#92890)
Some checks failed
publish-technical-documentation-next / sync (push) Has been cancelled
Sync to mirror / trigger_downstream_patch_mirror (push) Has been cancelled
/ Alerting Swagger spec generation cron job (push) Has been cancelled
* Update `refs` links in `Service accounts` to enable the Cloud docs

* Update `refs` links in `Migrate API keys` to enable the Cloud docs

* Update `refs` links in `RBAC docs` to enable the Cloud docs

* 2 - Update `refs` links in `RBAC docs` to enable the Cloud docs

* 3 - Update `refs` links in `RBAC docs` to enable the Cloud docs

* Apply Jack suggestions

* Set `folder permissions` for OSS and Cloud

* Set adminition shortcode to support GC ref links

* Fix `//` in URLs
2024-09-07 08:02:59 +02:00
Jean-Philippe Quéméner
368c4e53f1 feat(apiserver): refactor the hooking mechanism for standalone apiserver (#93001)
Some checks failed
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
golangci-lint / lint-go (push) Has been cancelled
Trivy Scan / trivy-scan (push) Has been cancelled
It now uses a full build handler chain that can be passed from up top to `SetupConfig`.

Co-authored-by: Charandas Batra <charandas.batra@grafana.com>
2024-09-06 14:12:12 -07:00
Larissa Wandzura
a1a18922e5 Docs: Minor updates to Explore metrics (#93053)
fixed some wording for clarity
2024-09-06 13:22:50 -05:00
Russ
c71aae8c5c Icons: update Asserts menu icon (#92888)
Chore: update Asserts menu icon
2024-09-06 10:08:30 -08:00
Dave Henderson
e1090db5d9 Chore: Bump Go to 1.23.1 (#93007)
Signed-off-by: Dave Henderson <dave.henderson@grafana.com>
2024-09-06 20:58:50 +03:00
Lucy Chen
2218841aa6 SharePanel: Add icons to panel options Share and More (#92622)
* add icon

* update icons

* add svg

* update legend

* remove new svg

* try again

* remove again

* add legend icons

* make review changes
2024-09-06 12:25:35 -05:00
Todd Treece
85759da360 Tracing: Add Start helper (#93052) 2024-09-06 13:02:17 -04:00
Tito Lins
539d363d2c Create histogram and observe grafana config size (#93028) 2024-09-06 18:25:16 +02:00
Andre Pereira
72ed3107fa Tempo: Remove usage of traceQLStreaming feature toggle (#93033)
* Remove usage of traceqlStreaming feature toggle and stop checking for Tempo version

* Increase Grafana Live's ClientQueueMaxSize to 4mb to support larger responses from Tempo
2024-09-06 16:12:21 +01:00
Irene Rodriguez
ffa925718e fix broken link in backend style guide (#93049)
fix broken link
2024-09-06 15:03:50 +00:00
Josh Hunt
cad56df002 Make Combobox Storybook story public, with indev disclaimer (#93042) 2024-09-06 17:56:03 +03:00
Alex Khomenko
3d6c938e59 RolePicker: Improve overlay positioning (#92590)
* RolePicker: Improve overlay positioning

* Fix vertical position

* More fixes
2024-09-06 17:36:55 +03:00
Torkel Ödegaard
3111f23bf1 ViewPanel: Refactoring to simplify logic by rendering the source panel instead of a clone (#93000)
* ViewPanel: Refactoring to simplify logic by rendering the source panel instead of a clone

* Moved util function to utils

* Update
2024-09-06 16:00:59 +02:00
Sonia Aguilar
427af2e7ec Ops: Add query param essentials to open Essentials drawer (#93023)
Some checks failed
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Has been cancelled
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
* Add query param essentials to open Essentials drawer

* use query param for keeping the state of the essentials drawer
2024-09-06 15:55:33 +02:00
linoman
9b2c2be82d SSO LDAP: Add login form alert (#93037)
* add alert if login form is disabled

* add i18n texts
2024-09-06 16:13:22 +03:00
Juan Cabanas
8b2091ee4f ShareDrawer: Improvements (#92956) 2024-09-06 09:37:00 -03:00
Martin Lehmann
55abfd7858 Docs: fix a typo on the Configure Grafana page (oentelemetry -> opentelemetry) (#93021)
chore(docs): fix a typo on the Configure Grafana page (oentelemetry -> opentelemetry)
2024-09-06 07:35:35 -05:00
Laura Benz
1be0105eb7 RestoreDashboards: Show root location as 'Dashboards' in folder picker (#92936)
* refactor: replace label if its value is Root

* refactor: replace label in the backend
2024-09-06 14:19:39 +02:00
João Calisto
a45ec2670d chore(tests): fix flaky SMTP test (#93031) 2024-09-06 13:17:26 +01:00
linoman
8ea374b773 SSO LDAP: Add Group Mappings field (#92993)
* Add GroupMApping component

* Add remove/add buttons

* Implement role fields

* Change value as number for org ids

* Add i18n extracts

* Use conditional for GrafanaAdmin switch
2024-09-06 13:42:33 +02:00
Joao Silva
20f7e11987 Restore Dashboards: Revert e2e tests (#93026) 2024-09-06 11:18:49 +01:00
Ryan McKinley
3cf84d1921 Chore: update centrifuge library (#93020) 2024-09-06 12:17:43 +03:00
Pepe Cano
e87140bf75 API Docs: create Authentication page and order sidebar menu (#92900)
* API Docs: create `Authentication` page and order sidebar menu

* fix minor typos

* Update capitalization

We don't capitalize titles as per https://grafana.com/docs/writers-toolkit/write/style-guide/capitalization-punctuation/

* Update docs/sources/developers/http_api/examples/_index.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* Update docs/sources/developers/http_api/authentication.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

---------

Co-authored-by: Irene Rodriguez <irene.rodriguez@grafana.com>
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-09-06 08:17:20 +02:00
Ivan Ortega Alba
d8c3645f31 TextVariable: Datalinks do not update variable value (#93003)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
Update `make docs` procedure / main (push) Has been cancelled
Run dashboard scenes e2e / dashboard-scenes-e2e (push) Has been cancelled
2024-09-05 22:19:30 +02:00
ismail simsek
9e6e41c6f8 Explore Metrics: Fix infinite loop while opening a panel in explore metrics (#92946)
* Fix infinite loop while opening a panel in explore metrics

* clean up
2024-09-05 21:04:43 +02:00
ismail simsek
0ba808805e Explore Metrics: Fix existing parent error while opening a panel in explore metrics (#92948)
Fix exiting parent error while opening a panel in explore metrics
2024-09-05 21:04:33 +02:00
Ivan Ortega Alba
ae0e970bef DetectChanges: Serialize message payload to avoid non-clonable props (#92831)
Detect changes: Serialize message payload to avoid non-clonable properties
2024-09-05 20:52:05 +02:00
Ivan Ortega Alba
35ba8fbad1 AutoSizeInput: Allow to be controlled by value (#92997) 2024-09-05 20:50:40 +03:00
Claudiu Dragalina-Paraipan
d5ebaa0ef9 [authn] adding appPlatformAccessTokens featureflag (#92991)
Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2024-09-05 19:18:44 +03:00
Claudiu Dragalina-Paraipan
1ce43b4c42 [authn] update authlib and claims versions (#92987)
* update authlib and claims versions

* 2nd make update-workspace

* manual fix
2024-09-05 19:17:15 +03:00
linoman
a0c886922e Auth: Add LDAP scope to Grafana Admin (#92990)
Add LDAP scope to Grafana Admin
2024-09-05 17:15:47 +01:00
Ashley Harrison
6b6355e418 Chore: migrate _grid SCSS styles to emotion globals (#92986)
migrate _grid styles to emotion globals
2024-09-05 16:39:12 +01:00
Victor Marin
4a4e3a4063 DashboardScenes: Use behavior for library panels (#90886)
* wip - refactor using libPanelBehavior

* wip

* wip

* wip

* migrate test

* wip

* nearly all tests done, except one commented which breaks

* migrate last test

* revert defaults.ini

* fix tests

* tests + fixes

* fix

* fix bug -- adding lib panel through CTA in empty dashboard didn't enter edit mode

* show unsaved lib panel changes modal

* fix height problems

* fix

* LibPanelBehavior: Fixes view panel and edit panel full page reload issues (alt fix)  (#92850)

* LibPanelsBehavior: Fixes view panel

* Sort of working except panel edit

* Got panel edit working

* LibraryPanelsBehavior: Simpler fix

* Cleanup

* Remove more stuff

* Update tests

* fix tests

* Work around timing issues

* remove log

* fix repeated panels not showing due to gridItem height not being set + translations

* remove log that affects tests

---------

Co-authored-by: Victor Marin <victor.marin@grafana.com>

* fix translations

* Fix save issue

---------

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2024-09-05 18:08:25 +03:00
Jev Forsberg
d3ceaf41c2 CI/CD: Update retry logic for package validation (#92943)
* baldm0mma/retry_command/ update retry logic for package validation

* baldm0mma/retry_command/ update to 15 minutes

* baldm0mma/retry_command/ update to 30 minute retry

* baldm0mma/retry_command/ make drone
2024-09-05 08:34:05 -06:00
Karl Persson
bc20592fd4 IAM: Add and use identity ref (#92978)
* Add and use identity ref

---------

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2024-09-05 16:10:23 +02:00
Matheus Macabu
95ef2a1eb2 CloudMigrations: Fix snapshot creation on Windows systems (#92941)
* cloudmigration: improve error logging stringify body

* deps: update migration snapshot library to v1.3.0 (fix to Windows)
2024-09-05 15:34:20 +02:00
Hugo Kiyodi Oshiro
c6fb9884a0 Plugins: Add sync update all plugins in cloud (#92742)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
2024-09-05 15:04:37 +02:00
Ashley Harrison
82fe497b9d Chore: remove adhocFilterOneOf toggle (#92979)
remove adhocFilterOneOf toggle
2024-09-05 15:49:24 +03:00
Claudiu Dragalina-Paraipan
085aaec958 Fix playlist tests (#92837) 2024-09-05 15:41:28 +03:00
Santiago
87f4df4bc3 Remote Alertmanager: update github.com/go-openapi/runtime (v0.27.1 -> v0.28.0) (#92951) 2024-09-05 08:47:38 -03:00
Karl Persson
2bfa607ad0 ServiceAccount: Update service account api resource and add service account token (#92972)
* Create own legacy store function to list service accounts and update api model

* Add service account tokens as a sub resource for service accounts
2024-09-05 13:43:54 +02:00
Arati R.
47cd8288cd SearchV2: Fix reading library panels (#92961)
* Fix reading of library panel field
* Add test to check reading of library panel field
2024-09-05 13:42:15 +02:00
Mihai Doarna
ebd17adecf API keys: Return 410 Gone status from POST /auth/keys endpoint (#92965)
* return 410 Gone status from POST /auth/keys endpoint

* generate swagger

* remove postAPIkeyResponse

* re-generate swagger

* remove docs for api key creation endpoint
2024-09-05 13:10:24 +03:00
renovate[bot]
de5bbd2539 Update dependency rc-cascader to v3.28.1 (#92931)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-05 10:53:59 +01:00
Ryan McKinley
5441e4c752 Storage: create a client with access to all interfaces, not just ResourceStore (#92967) 2024-09-05 12:52:30 +03:00
Ryan McKinley
9338e40dc3 K8s/IAM: Move identity.grafana.app to iam.grafana.app (#92929) 2024-09-05 09:43:54 +03:00
Torkel Ödegaard
aae788ae46 DashboardScene: Add browser history step when changing time range (#92950)
DashboardScene: Upgrade scene and turn on url history
2024-09-05 07:43:52 +02:00
Dave Henderson
c00a3bed42 chore(tests): Attempting to fix flaxy SMTP unit test (#92786)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
Signed-off-by: Dave Henderson <dave.henderson@grafana.com>
2024-09-04 16:25:44 -04:00
kay delaney
d8b6a5bde2 DashGPT: Fixes issue with generation on Safari (#90337)
* DashGPT: Fixes issue with generation on Safari

* Fix infinite loop issue + more refactoring

* Solve linter

---------

Co-authored-by: Ivan Ortega <ivanortegaalba@gmail.com>
2024-09-04 18:56:20 +03:00
Marcus Efraimsson
0a337ff3b3 Chore: Update SDK to v0.246.0 (#92938) 2024-09-04 17:30:37 +02:00
Ashley Harrison
d14a551ee8 Chore: Migrate _reboot SCSS styles to emotion globals (#92934)
migrate reboot styles to emotion globals
2024-09-04 16:27:07 +01:00
Ashley Harrison
86844142a9 Translations: Crowdin action now works on subsequent pushes (#92939)
* try using the generated token in the checkout action

* comment out github_user_name

* try adding with: token

* try env var

* try removing github_user_name

* restore user_name etc

* update action

* try persist-credentials: false;

* remove persist-creds false

* test

* restore github actions name
2024-09-04 16:20:00 +01:00
Joao Silva
b20017cf8c Restore Dashboards: Add e2e tests (#92514) 2024-09-04 15:47:15 +01:00
antonio
1d5dffc51d update commmands.json (#92930) 2024-09-04 17:02:32 +03:00
Brendan O'Handley
4bf350cc62 Prometheus: Variable query editor, display selected label when using query type of label values (#92513)
display label, add test
2024-09-04 08:11:17 -05:00
Gabriel MABILLE
cffaefddc3 Signer: Fix typo (#92928) 2024-09-04 15:01:24 +02:00
renovate[bot]
c17d1a3a4c Update dependency rc-slider to v11 (#92921)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-04 12:57:31 +01:00
renovate[bot]
58d9bc2cad Update dependency react-calendar to v5 (#92922)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-04 12:55:14 +01:00
Ryan McKinley
cb484f9883 K8s: Move ResourceInfo from common to utils (#92924) 2024-09-04 14:53:14 +03:00
Hugo Kiyodi Oshiro
668d87b19f Plugins: Add message on levitate workflow failure (#92906) 2024-09-04 13:52:42 +02:00
renovate[bot]
7c88d50ac4 Update dependency blob-polyfill to v9 (#92919)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-04 12:41:25 +01:00
renovate[bot]
b404dabc55 Update dependency rimraf to v6 (#92923)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-04 12:40:52 +01:00
renovate[bot]
468c1fcb9c Update dependency glob to v11 (#92920)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-04 14:03:38 +03:00
renovate[bot]
d9dc7cba50 Update dependency eslint-plugin-jsx-a11y to v6.10.0 (#92917)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-04 11:48:21 +01:00
Eric Leijonmarck
ded95af136 LBAC for datasources: doc improvements (#92872)
* LBAC for datasources: doc improvements

* fixed formatting of prettier

* Update docs/sources/administration/data-source-management/teamlbac/_index.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

---------

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-09-04 11:21:29 +01:00
linoman
b213ecc2dd SSO LDAP: Add configuration for root ca, client key and client certificate (#92866)
* Add missing properties with `_value` prefix

* Add RadioButtonGrpoup

* Add file/value section for certs

* Add mapping for keys and certificates

* Rename base and file types

* Add styles

* Add base64 values configuration flags

* Add function to render root ca certificate contents

* generate i18n files
2024-09-04 12:19:45 +02:00
renovate[bot]
13c8f4d212 Update dependency postcss to v8.4.45 2024-09-04 10:17:55 +00:00
Andreas Christou
8daa6f1f30 CI: Ensure changelogs are prettified prior to commit (#92580)
* Ensure changelogs are prettified prior to commit

* Remove cache property

* Include .yarn directory

* Include packages directory

* Try just using npx

* Update workflows
2024-09-04 11:03:17 +01:00
Sonia Aguilar
14e1403b9e Alerting: Recording rules detail view nits (#92643)
* Hide some fields in the details tab (view page) when it's a grafana recording rule

* link to the explore view from the metric name in the detail view

* Revert "link to the explore view from the metric name in the detail view"

This reverts commit 3c17d16cf6.

* move logic to usePendingPeriod hook

* move logic to getPendingPeriod function

* move logic for getting annotations to a new getAnnotations function
2024-09-04 13:02:06 +03:00
renovate[bot]
9c837407bf Update dependency eslint-plugin-react to v7.35.2 2024-09-04 09:57:10 +00:00
brendamuir
9d3d1703f7 Alerting docs: adds caps not supported in email contact points (#92902)
* Alerting docs: adds caps not supported in email contact points

* ran prettier

* feedback from antonio

* ran prettier
2024-09-04 09:54:38 +00:00
renovate[bot]
7933cbd204 Update dependency @types/node to v20.16.4 2024-09-04 09:25:17 +00:00
Tom Ratcliffe
aec73f3501 Alerting/Chore: Mock API (MSW) in browser (#89223)
Co-authored-by: joshhunt <josh@trtr.co>
2024-09-04 10:22:03 +01:00
renovate[bot]
636b831d90 Update dependency knip to v5.29.2 (#92882)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-04 11:38:00 +03:00
brendamuir
4749064f57 Alerting docs: responds to feedback on alerting state or error alerts (#92859)
* Alerting docs: responds to feedback on alerting state or error alerts

* ran prettier
2024-09-04 08:10:55 +02:00
Leon Sorokin
43c960dc97 Templating: Fix searching non-latin template variables (#92789)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-09-03 17:22:04 -05:00
Kyle Cunningham
437472811e Table: Fix nested table overlap when table is sorted (#92716)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Has been cancelled
2024-09-03 15:27:14 -05:00
Jean-Philippe Quéméner
5dce149221 feat(querier): propagate all known alerting headers (#92873) 2024-09-03 18:01:27 +02:00
renovate[bot]
db579877bd Update dependency eslint-plugin-import to v2.30.0 (#92878)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-03 16:53:01 +01:00
renovate[bot]
3acb43cf2e Update dependency @types/systemjs to v6.15.0 (#92876)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-03 16:15:55 +01:00
renovate[bot]
5a3acbb15d Update dependency postcss to v8.4.44 2024-09-03 14:33:20 +00:00
Victor Marin
2bbce8a7f7 DashboardScene: Re-perform repeat when returning to dashboard from panel edit (#92754)
* Reset prev values on panel deactivation/reactivation

* add comments

* fix

* add test
2024-09-03 17:12:55 +03:00
renovate[bot]
cb9c7de0ff Update dependency eslint-plugin-react to v7.35.1 2024-09-03 13:57:20 +00:00
Kyle Brandt
d382ea773a Prometheus: Enable the promQLScope (Scopes, Adhoc filters and groupby) by default (#92080) 2024-09-03 09:56:25 -04:00
Alexander Zobnin
88259da745 RBAC: Optimize permissions caching (#92673)
* Access control: Use composite cache key for team permissions

* use composite key for teams

* use cache for hotpath (getCachedUserPermissions)

* don't cache empty teams set

* don't pass permissions as argument

* early return if no teams found

* reload cache correctly

* optimize allocations

* Clear user's teams cache

* remove composite cache for teams

* fix linter

* don't clear teams permissions

* pre-allocate memory for basic roles permissions
2024-09-03 15:46:56 +02:00
renovate[bot]
6244c2be2c Update dependency eslint-plugin-jest to v28.8.2 2024-09-03 13:33:28 +00:00
Ivan Ortega Alba
351864653b Scenes: Upgrade to v5.12.0 (#92862) 2024-09-03 16:05:21 +03:00
Ashley Harrison
f34f5b80b4 Chore: Migrate _widths SCSS to global emotion styles (#92863)
* migrate widths to global styles

* only calculate width once per loop
2024-09-03 16:04:21 +03:00
renovate[bot]
9d974f7560 Update dependency @swc/helpers to v0.5.13 (#92858)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-03 13:44:51 +01:00
Serge Zaitsev
e699a71340 Chore: Bump moby version (#92857)
* bump moby version

* update workspace
2024-09-03 15:43:36 +03:00
Konrad Lalik
1128c417d8 Alerting: Fix cloud rules edit url (#92853)
Update cloud rule edit page url after successful update
2024-09-03 14:18:02 +02:00
Ashley Harrison
d9385d8a76 add missing await
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-09-03 14:02:27 +03:00
oscarkilhed
aa2175822e Fix bad mock in unittest 2024-09-03 14:02:27 +03:00
renovate[bot]
6c968f90ae Update dependency @grafana/scenes to v5.11.2 2024-09-03 14:02:27 +03:00
Jack Westbrook
e7d7ed5406 Chore: Remove side-effect import from app (#92650)
* chore(frontend): remove stray side-effect features import that brings the whole jungle

* chore(app): delete features/all.ts and its friends

* chore(codeowners): remove public/app/features/all.ts from file
2024-09-03 13:43:13 +03:00
Ieva
46e81e98cf RBAC: Always store action sets (#92833)
always store action sets, even if FT is disabled
2024-09-03 11:30:47 +01:00
Alexa V
9dc333dfa7 Dashboard Scene: Add close visualization button in panel edit (#92848) 2024-09-03 12:11:09 +02:00
Piotr Jamróz
d7d22bbbb8 TraceView: Display event names of a span (#91382)
* Display event name of a span

* Clean up

* Retrigger the build

* Show colon only when there are fields to display

* Rollback

* Use event name when exporting to OTLP

* Allow filtering spans by event name

* Show duration as a key/value pair

* Update betterer report (we do not translate panels that are planned to be externalized)

* Fix tests after changing how duration is rendered

* Handle long names

* Test handling long names

* Make parenthesis gray

* Fix a test

* Fix linting

* Fix tests

* Update label
2024-09-03 11:18:50 +02:00
Alexander Akhmetov
1df622641c Alerting: Update documentation about alert instance limit (#92668) 2024-09-03 11:02:20 +02:00
Tom Ratcliffe
13ea3d85ae Alerting: Fix preview of silences when label name contains spaces (#92802) 2024-09-03 09:14:11 +01:00
Pepe Cano
15de549093 Alerting docs: HA - configure alertmanager to prevent duplicated notifications (#92611)
* Alerting docs: HA - configure shared alertmanager

* Update docs/sources/alerting/set-up/configure-high-availability/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/set-up/configure-high-availability/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Apply minor content suggestion

---------

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2024-09-03 06:31:09 +02:00
Laura Benz
cdf035f813 Scenes/RestoreDashboards: Adjust DeleteDashboardModal and Toast message (#92601)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
* refactor: replace soft delete method

* refactor: adjust test to new naming

* refactor: clean up unused functions

* refactor: replace delete modal

* refactor: use new delete modal outside of scenes
2024-09-02 18:04:02 +02:00
Josh Hunt
a1190b165b Revert "Update dependency msw to v2.4.1" (#92829)
Revert "Update dependency msw to v2.4.1 (#92648)"

This reverts commit acab4c9438.
2024-09-02 15:51:12 +00:00
Sven Grossmann
5ad7c47816 Plugin Instrumentation: Add target property to request logs (#91946)
* Plugin Instrumentation: Add `target` property to request logs

* remove comment

* remove error
2024-09-02 17:41:26 +02:00
Timur Olzhabayev
564d09c9be Chore: fixing triage link (#92828)
fixing triage link
2024-09-02 18:24:04 +03:00
grafana-pr-automation[bot]
71e7d37727 I18n: Download translations from Crowdin (#92827)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-09-02 18:21:53 +03:00
piyushfs
a038d4136e NodeGraph: Allow to add datalinks (#90163)
* NodeGraph: allow to add datalinks

* chore: filter list
2024-09-02 16:06:56 +01:00
Andreas Christou
9459626372 AzureMonitor: Update logs workspaces (#92809)
Update logs workspaces and code to retrieve
2024-09-02 16:03:13 +01:00
Alex Khomenko
6ecc9b1d21 Announcement banner: Update docs (#92820) 2024-09-02 17:59:01 +03:00
Alexa V
f8cd448441 Dashboard: Fix Annotation runtime error when a data source does not support annotations (#92504)
When data source does not support annotations, shows an inline Error in Annotation Settings page
2024-09-02 16:46:20 +02:00
antonio
0df5a6aefc alerting: docs / highlight tutorial in landing page (#92805) 2024-09-02 16:40:16 +02:00
Esteban Beltran
045c57af23 Chore: Update auto triager github action to use private repository (#92819)
* Update auto triager to use private repository

* Check for other secrets too
2024-09-02 16:39:22 +02:00
Tom Ratcliffe
d1dc595692 Alerting: Fix target rule group for moving alert rule group (#92816) 2024-09-02 15:28:12 +01:00
Arati R.
f26f655615 Provisioning: Fix admin reloading of dashboard configuration (#92462)
* Set dashboard provisioner before provisioning dashboards
* Test provisioner instantiation during dashboard provisioning
2024-09-02 15:48:13 +02:00
grafana-pr-automation[bot]
401658e650 I18n: Download translations from Crowdin (#92810)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-09-02 16:39:54 +03:00
Esteban Beltran
a3e7e3dbfa Chore: Add auto-triager github action (#92807)
* Chore: Add auto-triager github action

* Add codeowners

* Add link

* Update .github/workflows/auto-triager.yml

Co-authored-by: Timur Olzhabayev <timur.olzhabayev@grafana.com>

---------

Co-authored-by: Timur Olzhabayev <timur.olzhabayev@grafana.com>
2024-09-02 15:23:04 +02:00
renovate[bot]
1395cd89da Update dependency @types/node to v20.16.3 2024-09-02 13:05:54 +00:00
Joey
bd5bd52a2c TraceView: Update feedback link style (#91845)
Update feedback link style
2024-09-02 14:02:00 +01:00
Tobias Skarhed
220215c9ca New Select: Create custom value (#92652)
* Display custom value in option list

* Ignore create new value when there is an exact match

* Support displaying custom value

* Add i18n string

* Update failing test
2024-09-02 14:42:42 +02:00
Eugene Apollonsky
5871362ccf Grafana SQL: Fix broken import in NumberInput component (#92803)
SQL: Fix broken import
2024-09-02 14:34:06 +02:00
Dzmitry Skachkou
f0d100d17a ValueFormats: Fix formatting of 'clock' unit when duration is more than 100 hours (#92656) 2024-09-02 13:50:54 +02:00
antonio
2226446318 tutorial : alerts with logs : add missisng interactive (#92800)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-09-02 10:48:40 +00:00
Esteban Beltran
51e27b8f3b Chore: Update commands.json to expand labels and their related projects (#92734)
* Chore: Update commands.json to expand labels and their related projects

* Fix trailing slashes
2024-09-02 11:27:22 +02:00
linoman
8c92d2a0ef SAML: Add description for Graph API permissions step (#92408)
* Add description for permissions step

* Update docs/sources/setup-grafana/configure-security/configure-authentication/saml/index.md

---------

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2024-09-02 11:23:02 +02:00
Victor Marin
47a0efd581 DashboardScenes: Default to first variable value when editing a repeated panel (#91123)
* DashboardScenes: Default to first variable value when editing a repeated panel

* cleanup

* tests

* refactor

* refactor

* refactor

* refactor
2024-09-02 12:05:14 +03:00
renovate[bot]
cf541b8869 Update dependency tslib to v2.7.0 (#92744)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-02 10:00:07 +01:00
Ashley Harrison
714f2d6d51 Playlist: Add default border radius to PlaylistTableRows (#92666)
add default border radius to PlaylistTableRows
2024-09-02 09:39:47 +01:00
Konrad Lalik
5942d8595d Alerting: Fix pending period for vanilla prom rules (#92728)
* Add support for reading pending period value from prom duration property

* Add tests

* Refactor the hook

* Remove unused import
2024-09-02 10:32:47 +02:00
Isabella Siu
2d10068714 CloudWatch: Logs queries should retry on throttling errors (#92535)
Some checks failed
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
golangci-lint / lint-go (push) Has been cancelled
publish-technical-documentation-next / sync (push) Has been cancelled
Sync to mirror / trigger_downstream_patch_mirror (push) Has been cancelled
/ Alerting Swagger spec generation cron job (push) Has been cancelled
CloudWatch: logs queries should retry on throttling errors
2024-08-30 13:55:00 -04:00
Señor Performo - Leandro Melendez
d6f871490e docs: Canvas updates adding why and how describing data needs (#92375)
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
Co-authored-by: Isabel Matwawana <isabel.matwawana@grafana.com>
2024-08-30 13:18:12 -04:00
Señor Performo - Leandro Melendez
129783ad8c docs: Histogram update added missing options (#92617)
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-08-30 13:14:36 -04:00
Señor Performo - Leandro Melendez
88d12be9f2 docs: Alert list update adding missing elements and descriptions. (#92619)
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-08-30 12:19:43 -04:00
Piotr Jamróz
3b7021dabc FieldConfig: Add missing "min/max" FieldConfigProperty option (#92596)
Add missing FieldConfigProperty standard option
2024-08-30 17:16:22 +02:00
Señor Performo - Leandro Melendez
7ce5ce4957 docs: updates to Pie chart documentation (#91608)
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
Co-authored-by: Isabel Matwawana <isabel.matwawana@grafana.com>
2024-08-30 11:16:11 -04:00
Tom Ratcliffe
9f5dca96f2 Alerting: Don't redirect after failed contact point creation (#92761) 2024-08-30 16:04:46 +01:00
Adela Almasan
91cbaa4afe Table: Fix JSON formatting (#92715) 2024-08-30 17:51:51 +03:00
Victor Marin
962fcf1fa8 DashboardScenes: Row repeater panels cannot be dragged outside and adding new panels to a cloned row updates all rows (#91062)
Some checks failed
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Close stale issues and PRs / stale (push) Has been cancelled
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
* Disallow dragging panels in repeated rows + dropping panels into cloned rows will update all repeated rows

* test
2024-08-30 09:50:22 -04:00
Tom Ratcliffe
172662af58 Alerting: Stop rule state view from crashing when prom rule state is missing (#91483) 2024-08-30 14:47:28 +01:00
Victor Marin
a0c1fc20ec DashboardScene: Update view panel scene variables properly after row repeat is performed (#92698)
* update view panel scene variables properly after row repeat is performed

* refactor

* Fix case where view mode from panel menu would not work

Co-authored-by: ivanortegaalba <ivan.ortega@grafana.com>

* add context

---------

Co-authored-by: ivanortegaalba <ivan.ortega@grafana.com>
2024-08-30 16:36:22 +03:00
Isabel Matwawana
b788f43cee Docs: Moved data source UID info into technical notes (#92712) 2024-08-30 09:34:30 -04:00
Señor Performo - Leandro Melendez
f048c3273b docs: StatusHistory update added missing option and reordered headers (#92613)
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-08-30 09:28:50 -04:00
Jack Baldry
7473ad6469 Lint "RBAC permissions, actions, and scopes" page for style (#92740) 2024-08-30 14:11:35 +01:00
Karl Persson
294712d7ef User: Add sub resource and api for user teams (#92649)
* Add sub resource for user teams

* Add test snapshots

* Update to use ref:s
2024-08-30 15:05:27 +02:00
Torkel Ödegaard
31c9084a3a DashboardGridItem: Fixes repeating panels issue when variable depends on time range (#92661)
* DashboardGridItem: Fixes repeating panels issue when variable depends on time range

* tests

---------

Co-authored-by: Victor Marin <victor.marin@grafana.com>
2024-08-30 15:50:09 +03:00
Sergej-Vlasov
00ae49a61a FeatureToggle - new filters UI feature toggle (#92189)
* add newFiltersUI experimental feature toggle

* adjust Ad hoc filter varibale layout property based on feature toggle

* restore file

* bump to latest scenes
2024-08-30 15:48:13 +03:00
Tom Ratcliffe
3262f0256e A11y: Fix some accessibility issues on the build error page (#92691)
Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
2024-08-30 13:42:45 +01:00
Ashley Harrison
a59474cf13 Chore: Migrate _forms styles to emotion globals (#92690)
migrate _forms styles to emotion globals
2024-08-30 13:04:31 +01:00
antonio
1f01a679f6 tutorial: link fix (#92748)
* tutorial: link fix

* typo

* link to tutorial pt 2
2024-08-30 11:56:16 +00:00
antonio
f670cf7920 update + sandboxfy tutorial (#92419)
* update + sandboxfy tutorial

* fix formatting

* update

* update2

* numbering

* final draft v1

* draft v1

* added jay's feedback

* query

* latest fixes

* typo

* all pretty no pity
2024-08-30 13:15:35 +02:00
Tom Ratcliffe
690fbe6077 Alerting: Edit, create and delete contact points via k8s API (#91701) 2024-08-30 12:10:30 +01:00
grafana-pr-automation[bot]
f4a8e0a214 I18n: Download translations from Crowdin (#92696)
* New Crowdin translations by GitHub Action

* New Crowdin translations by GitHub Action

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Clarity-89 <homes89@ukr.net>
2024-08-30 14:00:10 +03:00
Ieva
b99d1249db Docs: Update the docs for folder creation permissions (#92703)
* update the docs to reflect permissions needed to create subfolders

* Minor language fix

---------

Co-authored-by: Irene Rodriguez <irene.rodriguez@grafana.com>
2024-08-30 10:55:32 +00:00
Alexander Akhmetov
152d3540db Alerting: Log number of dimensions instead of all evaluation results (#92733) 2024-08-30 12:35:02 +02:00
renovate[bot]
a0e237dacf Update dependency eslint-plugin-jest to v28.8.1 2024-08-30 10:05:24 +00:00
Ashley Harrison
c16cc488c9 AdHocFilters: Add support for new isOneOf multi value operator (#91837)
* handle oneOf operator in prometheus

* use new supportsMultiValueOperators

* remap oneOf to regex in prometheus datasource

* Remap one of operators for scope filters

* use plugin.json property instead of feature toggle

* optional chaining

* fix unit tests

* use getInstanceSettings

* update to latest scenes

* fix unit tests

---------

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2024-08-30 11:03:44 +01:00
Leonor Oliveira
2e451b2ed7 Use dw dynamic config (#91882)
* Remove kubernetesPlaylists feature_toggle

* Remove unified_storage_mode

* Remove double import

* Read from config instead from feature_toggle

* cover scenario for when unified storage is not defined

* Be temporarily retro compatible with previous feature toggle

* Properly read unified_storage section

* [WIP] Read new format of config

* Fix test

* Fix other tests

* Generate feature flags file

* Use <group>.<resource> schema

* Use <group>.resource format on the FE as well

* Hide UniStore config from Frontend

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>

* unwanted changes

* Use feature toggles in the FE. Enforce FTs are present before enabling dual writing
Co-authored-by: Ryan McKinley <ryantxu@users.noreply.github.com>

* use kubernetes playlists feature toggle on the FE

* Remove unwanted code

* Remove configs from the FE

* Remove commented code

* Add more explicit example

---------

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
Co-authored-by: Maicon Costa <maiconscosta@gmail.com>
2024-08-30 11:59:42 +02:00
renovate[bot]
f8765087b5 Update dependency @tanstack/react-virtual to v3.10.6 2024-08-30 09:44:21 +00:00
antonio
cf951ab589 tutorials: sandboxfy grafana fundamentals (#92206)
* tutorials: sandboxfy grafana fundamentals

* applied feedback

* applied feedback2

* fixed description

* interactives

* ignore new tab instructions

* ignore new tab

* update instructions

* updated alert term / alert isntance

* fix numbering

* adding Lisa's feedback

* changees to fundamentals tutorial

* Fix minor typos and style

* all pretty, no pity

---------

Co-authored-by: Irene Rodriguez <irene.rodriguez@grafana.com>
2024-08-30 11:42:46 +02:00
Pepe Cano
6a29e4aecf IAM docs: Transform API keys to Migrate API keys docs (#92380)
* IAM docs: Transform `API keys` to `Migrate API keys` docs

* Update links to `API keys` in other doc pages

* Grafana UI: update help button link

* Update OpenAPI/Swagger links

* Update docs/sources/administration/service-accounts/migrate-api-keys.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* Update `relref` links to the new URL

* fix space before em dash

spaces before or after em dashes are not recommended (https://developers.google.com/style/dashes)

---------

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
Co-authored-by: Irene Rodriguez <irene.rodriguez@grafana.com>
2024-08-30 11:37:36 +02:00
renovate[bot]
48f8be2cfc Update dependency @babel/runtime to v7.25.6 2024-08-30 09:22:20 +00:00
Alex Khomenko
6abf50b0c9 Routing: Update core tests (#92582)
* Update MegaMenu.test.tsx

* Update GrafanaRoute.test.tsx

* Remove unused file

* Update SignupInvited.test.tsx

* Remove usage of match

* Update betterer
2024-08-30 12:01:32 +03:00
renovate[bot]
acab4c9438 Update dependency msw to v2.4.1 (#92648)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-30 11:50:49 +03:00
Pepe Cano
fcb4b3d39e Docs: keep the HTTP API list updated (#92635)
* Docs: keep the HTTP API list updated

* Update menu title to be consistent with the HTTP API list

* Update docs/sources/developers/http_api/preferences.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* Update docs/sources/developers/http_api/snapshot.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

---------

Co-authored-by: Irene Rodriguez <irene.rodriguez@grafana.com>
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-08-30 10:27:24 +02:00
Erik Sundell
db0cc24f2b Plugin extensions: Introduce new registry for added links (#92343)
* add added component registry

* fix broken test

* add tests for usePluginComponents hook

* readd expose components

* add type assertion exceptions to betterer results

* use new addedComponent registry in legacy endpoints

* remove unused code

* cleanup

* revert test code

* remove commented code

* initial commit

* refactor sync method and hook

* fix tests

* subscribe to the correct registry

* remove old registry

* cleanup types

* add use usePluginLinks hook

* add more tests

* fix import order

* fix typo

* fix and temporarly skip failing tests

* wip

* add hook tests

* add more tests

* remove old hook

* fix versioning

* add version to all extension point ids

* remove cleanup

* remove unused imports

* revert touched file

* fix test

* test: remove hook creation

* catch init error

* send error to faro

* fix broken hook

* comment out call hook initialization

* use the right import ofr isString

* remove unused import

* remove registryState type

* pr feedback

* Update public/app/features/plugins/extensions/validators.test.tsx

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

* Update public/app/features/plugins/extensions/validators.test.tsx

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

* remove no longer relevant comment

* fix broken tests

* Fixed test to verify that the memotization works properly.

* simplify hooks

---------

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2024-08-30 10:09:01 +02:00
brendamuir
16c618f4d3 Alerting docs: add info on changing default time out for evaluation (#92391)
* Alerting docs: add info on changing default time out for evaluation

* ran prettier

* Update docs/sources/alerting/fundamentals/alert-rule-evaluation/state-and-health.md

Co-authored-by: antonio <45235678+tonypowa@users.noreply.github.com>

* Update docs/sources/alerting/fundamentals/alert-rule-evaluation/state-and-health.md

Co-authored-by: antonio <45235678+tonypowa@users.noreply.github.com>

* ran prettier

* updates with yuris feedback

* ran prettier

---------

Co-authored-by: antonio <45235678+tonypowa@users.noreply.github.com>
2024-08-30 09:46:55 +02:00
Konrad Lalik
e0950a1283 Alerting: Add compatibility between prometheus and ruler identifiers (#92496)
* Unify Prom and Ruler rules hash creation

* Add tests, refarct prom hash
2024-08-30 08:39:11 +02:00
Jeff Levin
372d0acec8 Instrument tracing across dashboards (#91937)
Add tracing across dashboards and accesscontrol
2024-08-29 22:26:15 -08:00
Yuri Tseretyan
ce64d79027 Alerting: Integration tests for Receiver API (#90632)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
---------

Co-authored-by: Matthew Jacobson <matthew.jacobson@grafana.com>
2024-08-29 22:27:26 -04:00
Sergej-Vlasov
c4d804a964 ImportDashboard: adjust flaky e2e test (#92705)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Has been cancelled
Update `make docs` procedure / main (push) Has been cancelled
Run dashboard scenes e2e / dashboard-scenes-e2e (push) Has been cancelled
adjust test to wait for monaco editor
2024-08-29 16:21:05 -04:00
Matthew Jacobson
d5fd6aceca Alerting: Stop redacting receivers by default in receiver_svc (#92631)
* Stop redacting receivers by default in receiver_svc

[REDACTED] is only used in provisioning API since response doesn't include
SecureFields. This is not necessary in k8s or notifications api, instead we do
not include the encrypted settings in Settings at all, leaving it to
SecureFields to specify when a secure field exists.

* Capitalize logs messages
2024-08-29 14:48:59 -04:00
Juan Cabanas
eb8b6a5a70 ShareDrawer: Wording and defaults improvements (#92629) 2024-08-29 15:31:28 -03:00
Matthew Jacobson
e43ddd516d Alerting: Ensure k8s receiver API create/update will never store nil settings (#92701)
Ensure Create/Update will never store nil Settings
2024-08-29 20:00:55 +03:00
Sarah Zinger
8774642788 QueryService: Forward headers to datasource clients (#92329)
Query Service: pass expected headers
2024-08-29 12:47:38 -04:00
Joao Silva
bdb1c7ee63 Bookmarks: Add empty state to page (#92693) 2024-08-29 16:58:19 +01:00
Joao Silva
6ab120a448 Bookmarks: Fix interaction tracking bug (#92653) 2024-08-29 16:52:52 +01:00
maicon
9e6a464328 UniStore: Remove unused feature toggles from docs (#92688)
`grafanaAPIServer` got removed on https://github.com/grafana/grafana/pull/81030
`idForwarding` got removed on https://github.com/grafana/grafana/pull/92209

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
2024-08-29 18:27:38 +03:00
Carl Bergquist
56d35d32e2 Scopes: increase limit on list calls to storage (#92687)
scopes: increase limit on list calls to storage

Signed-off-by: bergquist <carl.bergquist@gmail.com>
2024-08-29 18:12:11 +03:00
Sarah Zinger
c0b2fafd5e Ensure that datasource apiservers receive and forwards headers (#92304)
* Ensure that datasource apiservers receive and forwards headers for datasources:
- adds log line for prometheus to see when from alert header is received
- add logging to the datasource apiserver
- Updates the Connect func in sub query to forward expected headers to datasources and log unexpected ones.
2024-08-29 11:06:25 -04:00
maicon
2b3d2e5b40 UniStore: Remove leftover references to unifiedStorage feature toggle (#92685)
it got removed on https://github.com/grafana/grafana/pull/92192

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
2024-08-29 18:04:36 +03:00
Señor Performo - Leandro Melendez
f4249c2141 docs: Bar gauge doc updates adding why and how, explaining data needs (#92374)
Co-authored-by: Isabel Matwawana <isabel.matwawana@grafana.com>
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-08-29 10:36:54 -04:00
Señor Performo - Leandro Melendez
1d34fc2d1a docs: Barchart doc updates add video, why, how and data needs (#92262)
Co-authored-by: Isabel Matwawana <isabel.matwawana@grafana.com>
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-08-29 10:34:32 -04:00
Ashley Harrison
d2ee4d1005 RadioButtonGroup: Ensure background colour displays properly (#92665)
add background colour to RadioButtonGroup
2024-08-29 15:16:04 +01:00
Tom Ratcliffe
6298825cf7 Alerting: Consolidate mute timings selector logic (#92372) 2024-08-29 15:09:53 +01:00
Sven Grossmann
15a4ff992b Explore Logs: Add feature flags (#92670) 2024-08-29 15:55:59 +02:00
Timur Olzhabayev
dfba5776b9 Doc: Adding information about datasource UID enforcement (#92659)
* Adding information about datasource UID enforcement

* Style and content fixes (#92667)

This fixes:
- datasource to data source as per our style guide
- some other minor typos
- style and content

* fixing prettier lint

---------

Co-authored-by: Irene Rodriguez <irene.rodriguez@grafana.com>
2024-08-29 13:54:47 +00:00
Larissa Wandzura
f9d38c8869 Docs: Re-order Explore docs in TOC (#92624)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
* re-ordered Explore docs for cohesion

* ran prettier
2024-08-29 08:33:14 -05:00
Jack Baldry
5e89a9060b Remove all documented references to time_options (#92657) 2024-08-29 13:47:26 +01:00
Victor Marin
6ddb96ada2 Add extra width to menu to accomodate checkbox (#92600)
* Add extra width to menu to accomodate checkbox

* modify value
2024-08-29 15:28:00 +03:00
Leonor Oliveira
66e0121dd5 Pass resource name into the dual writer initialization (#92654) 2024-08-29 13:30:48 +02:00
Ryan McKinley
82417c916f K8s: Use stacks plural not singular in grafana namespaces (#92550) 2024-08-29 14:15:00 +03:00
Victor Marin
454d36167e DashboardScene: Fix issue where panels are lost from dashboard (#92118)
* fix issue where panels aren't added to rows

* refactor
2024-08-29 13:56:42 +03:00
Ashley Harrison
68ca6e9610 MetricGraphScene: Position properly when bodyScrolling is enabled (#92289)
handle positioning of MetricGraphScene when bodyScrolling is enabled
2024-08-29 11:35:59 +01:00
Jack Westbrook
ec89854c5e Performance: Lazy load built in panel plugins (#92490)
feat(plugins): lazy load built in panel plugins
2024-08-29 11:54:31 +02:00
Ieva
a72b557886 Docs: Extend docs with service account limitations (#92630)
* extend docs with service account limitations

* linting

* Apply suggestions from code review

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* PR feedback

* more PR feedback

* linting

---------

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-08-29 09:50:11 +00:00
Kawthar Alakri
bd974bd791 New Select: Unit tests base cases (#92485)
* init commit

* New Select test cases

* click + scroll and click test cases

* code format

* code format
2024-08-29 11:45:21 +02:00
Andres Martinez Gotor
f9cd0fe5d1 Add debug headers when downloading plugins (#92579) 2024-08-29 11:30:21 +02:00
renovate[bot]
4209c13155 Update dependency @types/diff to v5.2.2 2024-08-29 09:23:00 +00:00
Laura Fernández
7e92cea000 TutorialCard: Fix link to tutorial not opening (#92599) 2024-08-29 11:22:50 +02:00
Bogdan Matei
1e1b554ff3 Scopes: Fix long texts for suggested dashboards (#92641) 2024-08-29 12:20:56 +03:00
Ashley Harrison
cec447cf7a Drawer: Fix drawer mask positioning (#92318)
fix drawer mask positioning
2024-08-29 09:56:26 +01:00
renovate[bot]
90319c9482 Update dependency stylelint to v16.9.0 (#92608)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-29 09:51:18 +01:00
Laura Fernández
8aaa155cb0 singleTopNav: Create feature toggle (#92610) 2024-08-29 10:48:32 +02:00
Karl Persson
56487d37db Authn: No longer hash service account token twice during authentication (#92598)
* APIKey: Only decode and hash token once during authentication

* Only update last used every 5 minutes
2024-08-29 09:56:23 +02:00
Charandas
4f024d94d8 Authn: resolve issues with setting up a nil identity (#92620)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-08-29 00:49:41 +03:00
Adela Almasan
692280cd32 BarGauge: Add legend support (#92449)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
publish-kinds-next / config (push) Has been cancelled
publish-kinds-next / main (push) Has been cancelled
Trivy Scan / trivy-scan (push) Has been cancelled
2024-08-28 23:26:55 +03:00
Gilles De Mey
9d173ef579 Alerting: Fixes incorrect cache invalidation for silences when no silences exist (#92322) 2024-08-28 17:25:10 +01:00
renovate[bot]
a2602031c0 Update dependency react-zoom-pan-pinch to v3.6.1 (#92606)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-28 17:19:35 +01:00
Eric Leijonmarck
577ebb3444 LBAC for datasources: Update swagger documentation (#92594)
* LBAC for datasources: Update swagger documentation

* update swagger again
2024-08-28 17:04:57 +01:00
renovate[bot]
8324a720f4 Update dependency @grafana/scenes to v5.10.2 2024-08-28 18:43:44 +03:00
Ida Štambuk
1735235277 Chore: Update elasticsearch_test.go (#92602) 2024-08-28 17:34:57 +02:00
renovate[bot]
faf2178a98 Update dependency react-hook-form to v7.53.0 (#92585)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-28 16:19:39 +01:00
Eve Meelan
7057bd7caf replace myself with Irene in CODEOWNERS (#92589)
Update CODEOWNERS
2024-08-28 10:57:24 -04:00
Gábor Farkas
abca0380a8 use count_bytes_reader from plugin-sdk-go (#92553)
* use count_bytes_reader from plugin-sdk-go

* run `make update-workspace`

* update postgres tests

* update mysql tests

* time back to utc

* make update-workspace done

---------

Co-authored-by: Kyle Brandt <kyle@grafana.com>
2024-08-28 16:44:13 +02:00
Leonor Oliveira
09f102b72e Remove condition on where we return from unified storage in mode2 (#92593) 2024-08-28 16:31:53 +02:00
Hugo Kiyodi Oshiro
01b9ad3789 Plugins: Hide update all plugins in cloud (#92597) 2024-08-28 16:21:46 +02:00
Andrew Hackmann
f8af6f4eea Graphite: Add @ to the lexer (#92546)
Add @ to the lexer
2024-08-28 09:12:23 -05:00
Andrew Hackmann
e0a0942203 Graphite: Tag values are queried with dashboard time range (#92167)
add time range to get tag values in graphite
2024-08-28 09:08:46 -05:00
Gabriel MABILLE
2a1a43fc9b PermissionRegistry: Error on unknown kind (#91469)
* PermissionRegistry: Error on unknown kind

* Account for PR feedback

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

* Add missing alerting scope

---------

Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>
2024-08-28 15:58:25 +02:00
Todd Treece
2bb2183b41 Scopes: Move title and groups to status in ScopeDashboardBinding (#92377)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
---------

Co-authored-by: Kyle Brandt <kyle@grafana.com>
Co-authored-by: Bogdan Matei <bogdan.matei@grafana.com>
2024-08-28 08:59:18 -04:00
Arati R.
34149c86d0 Provisioning: Prevent provisioning folder errors from failing startup (#92560)
* Prevent provisioning folder errors from failing startup
* Refactor setting of dashboard provisioner
2024-08-28 14:49:00 +02:00
renovate[bot]
68751ed310 Update dependency i18next to v23.14.0 (#92584)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-28 13:35:21 +01:00
Arati R.
c5b377f06e Provisioning: Revert "Allow startup when there are dashboard provisioning failures" (#92568)
Revert "Provisioning: Allow startup when there are dashboard provisioning failures (#92201)"

This reverts commit 927ce6c700.
2024-08-28 14:19:59 +02:00
Karl Persson
1eb49e1b0f Chore: restructure legacy store for identity (#92572)
* Restructure user queries

* restructure display query

* restructure team queries

* restructure team bindings query

* Restructure team members

* Restructure store
2024-08-28 14:15:26 +02:00
renovate[bot]
965a9e2d79 Update dependency eslint-plugin-testing-library to v6.3.0 (#92581)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-28 13:01:25 +01:00
Eric Leijonmarck
6a19278f23 API Keys: Removal & Redirect of Create endpoint (#92144)
* API keys: redirecting of create endpont

* update naming and using admonition

* fmt

* Apply suggestions from code review

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

---------

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2024-08-28 12:20:36 +01:00
renovate[bot]
909d0fac35 Update dependency @types/node to v20.16.2 (#92576)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-28 12:15:38 +01:00
Mihai Doarna
2b70945fda Auth: Display page not found when the provider is invalid (#92563)
display page not found when the provider is invalid
2024-08-28 14:06:24 +03:00
renovate[bot]
a9c2c97531 Update dependency @opentelemetry/semantic-conventions to v1.27.0 (#92566)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-28 11:44:50 +01:00
renovate[bot]
58ecb8e3d8 Update dependency @tanstack/react-virtual to v3.10.5 (#92561)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-28 12:59:41 +03:00
renovate[bot]
c92f5169d1 Update dependency @prometheus-io/lezer-promql to v0.54.1 (#92556)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-28 10:16:31 +01:00
renovate[bot]
726fe8bd9c Update dependency rudder-sdk-js to v2.48.17 2024-08-28 08:55:18 +00:00
Aaron Godin
86e8e3b75d Revert "RBAC: Optimize permissions caching" (#92548)
Revert "RBAC: Optimize permissions caching (#92412)"

This reverts commit 488e994d37.

Co-authored-by: gamab <gabriel.mabille@grafana.com>
2024-08-28 10:44:38 +02:00
Karl Persson
4addd9637e Team: Add sub resource and api for team members (#92492)
* Add team members as a sub resource

* Fix and clean up pagination for teams

* Fix and clean up pagination for users

* Fix and clean up pagination for service accounts

* Update snapshots
2024-08-28 10:30:23 +02:00
renovate[bot]
72be3e861e Update dependency webpack to v5.94.0 [SECURITY] (#92545)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-28 09:29:33 +01:00
renovate[bot]
1552ab0eb7 Update dependency @opentelemetry/semantic-conventions to v1.26.0 (#92518)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-28 09:28:46 +01:00
Hugo Kiyodi Oshiro
af976c9a0b Plugins: Set isFullyInstalled false on plugin uninstall (#92503) 2024-08-28 09:50:48 +02:00
Todd Treece
85ef26a85d K8s: Add generic support for status (#92378)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-kinds-next / config (push) Waiting to run
publish-kinds-next / main (push) Blocked by required conditions
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
2024-08-28 03:45:04 +03:00
Adela Almasan
39fda067cf BarGauge: Add option to hide the names (#92450) 2024-08-27 17:21:35 -05:00
Charandas
af2e79aa83 K8s: namespace mapper should use authlib's util (#92332) 2024-08-27 15:01:42 -07:00
Señor Performo - Leandro Melendez
f9719d4ee9 docs: Added geomap missing headings, why and how describing data needs (#92237)
Co-authored-by: Drew Slobodnjak <60050885+drew08t@users.noreply.github.com>
Co-authored-by: Isabel Matwawana <isabel.matwawana@grafana.com>
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-08-27 17:44:11 -04:00
Señor Performo - Leandro Melendez
f17bc146c2 docs: Nodegraph doc updates adding why and how explaining data needs (#92258)
Co-authored-by: Isabel Matwawana <isabel.matwawana@grafana.com>
2024-08-27 17:30:36 -04:00
Galen Kistler
867f3f793c Logs Panel: Only send DataHoverClearEvent on container mouse leave event (#92526)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Has been cancelled
* fix: stop sending clear events between every row, and only when the mouse leaves the container
2024-08-27 22:44:17 +03:00
Andreas Christou
931d64b8fc CI: Run prettier in bump-version workflow (#92195)
Run prettier
2024-08-27 20:21:51 +01:00
Isabel Matwawana
85cd9cbe25 Docs: Show youtube videos in what's new 11.2 (#92520) 2024-08-27 14:09:31 -04:00
Señor Performo - Leandro Melendez
1c1b081a4c docs: Update logs doc adding why and how to including data reqs (#92166)
Co-authored-by: Isabel Matwawana <isabel.matwawana@grafana.com>
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-08-27 14:09:20 -04:00
grafana-delivery-bot[bot]
52f60cd4f9 Release: update changelog for 11.2.0 (#92494)
* Update changelog

* Update changelog

* Update changelog

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
2024-08-27 18:15:37 +01:00
renovate[bot]
d5b7b4ba58 Update dependency @grafana/experimental to v1.8.0 (#92515)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-27 17:38:09 +01:00
Piotr Jamróz
573e16fa3b CI: Null check for author (#92516)
Null check for author
2024-08-27 18:32:01 +02:00
maicon
de2c9a06bf Unified Storage: First iteration Dual Write Syncer (#89809)
* Unified Storage: First iteration Dual Write Syncer

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
Co-authored-by: Leonor Oliveira <9090754+leonorfmartins@users.noreply.github.com>
Co-authored-by: Dan Cech <dcech@grafana.com>
2024-08-27 13:31:40 -03:00
renovate[bot]
2235825ef9 Update dependency ts-jest to v29.2.5 2024-08-27 16:15:49 +00:00
Jack Baldry
847b84004d Reorganize Explore Metrics content so OSS TOC matches Cloud (#92501) 2024-08-27 17:02:07 +01:00
Andreas Christou
d00abe0972 CI: Update inputs to allow specifying previous version (#92506)
* Update inputs to allow specifying previous version

* Add one more input
2024-08-27 16:49:23 +01:00
renovate[bot]
aae8527410 Update dependency knip to v5.27.4 2024-08-27 15:46:36 +00:00
renovate[bot]
475fb6ac3a Update dependency @types/lodash to v4.17.7 (#92482)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-27 16:09:01 +01:00
Isabel Matwawana
18726943a3 Docs: Add videos to What's new 11.2 (#92444) 2024-08-27 11:07:34 -04:00
Stephanie Hingtgen
a4266df16d SQL Store: Fix parse time setup (#92484) 2024-08-27 17:39:27 +03:00
grafana-pr-automation[bot]
aba4b42973 I18n: Download translations from Crowdin (#92493)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-08-27 17:20:36 +03:00
Misi
a3d688c8ed CLI: Provide the list of admins if the admin with the default ID was not found (#92217)
* Provide the list of admins if the admin with the default ID was not found

* Clean up

* Update docs

* Update docs/sources/cli.md

Co-authored-by: Dan Cech <dcech@grafana.com>

* Update pkg/cmd/grafana-cli/commands/reset_password_command.go

Co-authored-by: Dan Cech <dcech@grafana.com>

* Lint

---------

Co-authored-by: Dan Cech <dcech@grafana.com>
2024-08-27 16:01:33 +02:00
grafana-pr-automation[bot]
a884e03dc5 I18n: Download translations from Crowdin (#91912)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-08-27 16:59:52 +03:00
Tobias Skarhed
92491dd78c New Select: Semi-dynamic option width support (#92284)
* Fix button role and input id

* Use static height and dynamic width

* Estimate dynamic width

* Extract constant

* Remove unused code

* Extract dynamic width into a hook

* Remove console.log

* Add comment to the constants

* Update packages/grafana-ui/src/components/Combobox/Combobox.tsx

Co-authored-by: Laura Fernández <laura.fernandez@grafana.com>

* Update packages/grafana-ui/src/components/Combobox/getComboboxStyles.ts

---------

Co-authored-by: Laura Fernández <laura.fernandez@grafana.com>
2024-08-27 15:51:25 +02:00
Kim Nylander
f063088188 [DOC] Update TraceQL query editor doc (#91910)
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-08-27 14:49:49 +01:00
Kristian Bremberg
24afc7a5b3 TextPanel: Allow iframes (after sanitization) (#92299)
* Allow iframes in text panel

* add more attributes

* remove =true
2024-08-27 14:44:58 +01:00
grafana-delivery-bot[bot]
7c408f5e16 Release: update changelog for 11.1.5 (#92488)
* Update changelog

* Lint

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
2024-08-27 14:39:32 +01:00
Alexander Zobnin
0e0c877609 Zanzana: Model fixed roles as a part of schema (#92364)
* model fixed roles for dashboards and folders

* Correctly translate fixed role assignments

* minor refactor

* assign fixed roles to teams

* fix linter errors

* Migrate general folder permissions for fixed roles

* fix dashboards:create permission
2024-08-27 15:39:22 +02:00
Juan Cabanas
8862578f50 ShareDrawer: Wrap render logic and add shareView query param (#92060) 2024-08-27 16:31:07 +03:00
grafana-delivery-bot[bot]
c588882c26 Release: update changelog for 11.0.4 (#92480)
* Update changelog

* Fix lint

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
2024-08-27 14:11:27 +01:00
Jack Westbrook
892a50a3b7 Performance: Load shared frontend plugin dependencies on demand (#87644)
* feat(plugins): only load shared plugin dependencies when needed

* feat(plugins): add react-redux and fix up comments

* feat(plugins): attempt to load async deps in fe sandbox

* feat(frontend): defer script execution to prevent systemjs from loading app.js
2024-08-27 15:10:26 +02:00
renovate[bot]
1e32e98bf6 Update dependency @grafana/faro-web-tracing to v1.9.1 2024-08-27 12:41:19 +00:00
Matheus Macabu
b132d921b7 CloudMigrations: point cloud instance to sef-serve guide (#92471)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
2024-08-27 13:25:51 +01:00
renovate[bot]
e66979765d Update dependency @grafana/faro-web-sdk to v1.9.1 2024-08-27 12:18:44 +00:00
grafana-delivery-bot[bot]
1654ffeef4 Release: update changelog for 10.4.8 (#92476)
* Update changelog

* Lint CHANGELOG

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
2024-08-27 13:16:04 +01:00
Ashley Harrison
2318e32c9f Chore: Migrate legacy dropdown styles to emotion/angular file (#92282)
migrate legacy dropdown classes to emotion/angular file
2024-08-27 12:40:54 +01:00
Hugo Kiyodi Oshiro
0f24c89c91 Plugins: Add update all plugins feature (#92229) 2024-08-27 13:38:39 +02:00
renovate[bot]
37f0c0d00f Update dependency @grafana/faro-web-sdk to v1.9.1 2024-08-27 11:35:54 +00:00
grafana-delivery-bot[bot]
32c3e17e58 Release: update changelog for 10.3.9 (#92467)
* Update changelog

* Lint Changelog

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2024-08-27 13:34:19 +02:00
Ryan McKinley
c59dddf7af MySQL: Add parseTime=true to SQL connections (#92469) 2024-08-27 14:16:04 +03:00
renovate[bot]
c98e3e0483 Update dependency @grafana/faro-core to v1.9.1 2024-08-27 11:08:19 +00:00
Laura Benz
6950093911 RestoreDashboards: Set preselected folder in folder picker for restoring several dashboards from the same folder (#92403)
* feat: add condition for several dashboards

* refactor: clean up

* refactor: clean up and comment

* refactor: clean up

* refactor: clean up
2024-08-27 14:06:23 +03:00
renovate[bot]
a99e32947a Update dependency @floating-ui/react to v0.26.23 (#92470)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-27 13:44:26 +03:00
Jack Westbrook
c0a719caa7 Datalinks: Fix context menu position for body scroll (#92389)
* fix(datalinks): position context menu offest to vertical window scroll

* feature toggle change

* enhance boot data mock with empty featureToggles

---------

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2024-08-27 13:28:48 +03:00
Ryan McKinley
5a30e12a10 SQLTemplate: Make Ident only work for identifiers (not any string) (#92387) 2024-08-27 13:22:40 +03:00
Ashley Harrison
437747f250 update committed yarn version 2024-08-27 13:18:56 +03:00
renovate[bot]
02f1bb7b46 Update Yarn to v4.4.1 2024-08-27 13:18:56 +03:00
Laura Benz
1f35bc8346 RestoreDashboards: Make confirmation text consistent (#92388)
* refactor: change wording

* refactor: change API

* refactor: clean up
2024-08-27 13:13:48 +03:00
Joao Silva
f1ba609b34 Chore: Upgrade micromatch to version without CVE-2024-4067 (#92405) 2024-08-27 10:16:59 +01:00
Erik Sundell
b648ce3acf Plugin extensions: Introduce new registry for added components (#91877)
* add added component registry

* fix broken test

* add tests for usePluginComponents hook

* readd expose components

* add type assertion exceptions to betterer results

* use new addedComponent registry in legacy endpoints

* remove unused code

* cleanup

* revert test code

* remove commented code

* wrap in try catch

* pr feedback
2024-08-27 11:14:04 +02:00
Ryan McKinley
419edef4dc LibraryPanels: Expose library panels in dashboard apiserver (#92213) 2024-08-27 12:12:22 +03:00
renovate[bot]
7ad3d9bf76 Update dependency @grafana/plugin-e2e to v1.7.1 (#92308)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-27 09:47:37 +01:00
Alexander Zobnin
488e994d37 RBAC: Optimize permissions caching (#92412)
* Access control: Use composite cache key for team permissions

* use composite key for teams

* use cache for hotpath (getCachedUserPermissions)

* fix linter

* fix sorting

---------

Co-authored-by: Jeff Levin <jeff@levinology.com>
2024-08-27 10:31:52 +02:00
Hugo Kiyodi Oshiro
a54ec2341c Plugins: Hide GetStartedWithDataSource when cloud plugin is not fully installed (#92402) 2024-08-27 10:14:40 +02:00
Alexander Akhmetov
7f6b6dea45 Alerting: Change expire placeholder for Pushover in the UI to 10800 seconds (#92379)
* Alerting: Change max retry for Pushover in the UI to 10800 seconds
* Update alerting to 70248a7a3a674e50e026a37205ebac86e1ec25fd
2024-08-27 11:13:58 +03:00
github-actions[bot]
3141c39d1f Update make docs procedure (#92340)
Co-authored-by: grafanabot <bot@grafana.com>
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-08-27 08:53:39 +01:00
brendamuir
667cbd626c Alerting docs: adds display names to fixed roles for RBAC (#92357)
* Alerting docs: adds display names to fixed roles for RBAC

* ran prettier

* updates descriptions

* preposition update

* ran prettier
2024-08-27 09:23:04 +02:00
Karl Persson
2872e11c13 Teams: Add apis for team membership (#92204)
* Add TeamBinding resource

* Implement read api:s for TeamBindings
2024-08-27 08:31:29 +02:00
Pepe Cano
2ba930ab1f Alerting Docs: Monitor your high availability setup (#92063)
* Alerting Docs: Monitor your high availability setup

* Update docs/sources/alerting/set-up/configure-high-availability/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/set-up/configure-high-availability/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/set-up/configure-high-availability/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Update docs/sources/alerting/set-up/configure-high-availability/_index.md

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

* Shorten links

* Update/reorder a bit the description about alertmanager gossiping

* Update `alertmanager_peer_position` description

---------

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2024-08-27 08:01:14 +02:00
Señor Performo - Leandro Melendez
336e6d97b7 docs: time series add why use it and how to data needs (#92158)
Some checks are pending
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Co-authored-by: Isabel Matwawana <isabel.matwawana@grafana.com>
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-08-26 17:25:05 -04:00
Andrew Hackmann
eac194815e MSSQL: decouple plugin (#89597)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
* decouple from core

* yarn decouple

* make health check work and azure config

* f

* driver error not needed

* merge
2024-08-26 23:09:21 +03:00
Yuri Tseretyan
4755eb5176 Alerting: Support template UID in template service (#92164)
* add uid to template and populate it
* update delete method to support both uid and name
* update UpdateTemplate to support search by UID and fallback to name + support renaming of the template
* update upsert to exit if template not found and uid is specified
* update Get method to address by name or uid

---------

Co-authored-by: Matthew Jacobson <matthew.jacobson@grafana.com>
2024-08-26 23:05:38 +03:00
Señor Performo - Leandro Melendez
354aee951d docs: added explanation of why to use tables and how to use with their data needs (#92150)
Co-authored-by: Isabel Matwawana <isabel.matwawana@grafana.com>
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-08-26 15:50:32 -04:00
Isabel Matwawana
6a15b677d8 Docs: What’s new & Upgrade guide v11.2 (#91847)
Co-authored-by: Mitch Seaman <mjseaman@users.noreply.github.com>
2024-08-26 15:49:19 -04:00
Eric Leijonmarck
413b511452 Revert "feat: Add new read filtering to datasources guardian" (#92407)
Revert "feat: Add new read filtering to datasources guardian (#91345)"

This reverts commit 0176ead117.
2024-08-26 13:16:04 -04:00
Carl Bergquist
61074e7e5e Devenv: Adds docker for prometheus with high cardinality labels. (#91035)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2024-08-26 19:12:59 +02:00
Matias Chomicki
3f88188a42 Logs panel: update internal displayed fields when the prop changes (#92418) 2024-08-26 19:08:01 +03:00
Alexander Weaver
490d6ba2fd Alerting: Extend scheduler user with datasources:read (#92410)
Add permission
2024-08-26 10:59:54 -05:00
Sonia Aguilar
857e2b1bc3 Alerting: update Grafana recording rule name placeholder (#92406)
update Grafana recording rule name placeholder
2024-08-26 15:34:49 +00:00
Agnès Toulet
79abc0cf1d Runtime: Make dashboardSceneSolo flag updatable at runtime (#92290)
Runtime: Make dashboardSceneSolo flag updatable at runtimeuntime
2024-08-26 17:12:01 +02:00
Matthew Jacobson
32f06c6d9c Alerting: Receiver API complete core implementation (#91738)
* Replace global authz abstraction with one compatible with uid scope

* Replace GettableApiReceiver with models.Receiver in receiver_svc

* GrafanaIntegrationConfig -> models.Integration

* Implement Create/Update methods

* Add optimistic concurrency to receiver API

* Add scope to ReceiversRead & ReceiversReadSecrets

migrates existing permissions to include implicit global scope

* Add receiver create, update, delete actions

* Check if receiver is used by rules before delete

* On receiver name change update in routes and notification settings

* Improve errors

* Linting

* Include read permissions are requirements for create/update/delete

* Alias ngalert/models to ngmodels to differentiate from v0alpha1 model

* Ensure integration UIDs are valid, unique, and generated if empty

* Validate integration settings on create/update

* Leverage UidToName to GetReceiver instead of GetReceivers

* Remove some unnecessary uses of simplejson

* alerting.notifications.receiver -> alerting.notifications.receivers

* validator -> provenanceValidator

* Only validate the modified receiver

stops existing invalid receivers from preventing modification of a valid
receiver.

* Improve error in Integration.Encrypt

* Remove scope from alert.notifications.receivers:create

* Add todos for receiver renaming

* Use receiverAC precondition checks in k8s api

* Linting

* Optional optimistic concurrency for delete

* make update-workspace

* More specific auth checks in k8s authorize.go

* Add debug log when delete optimistic concurrency is skipped

* Improve error message on authorizer.DecisionDeny

* Keep error for non-forbidden errutil errors
2024-08-26 10:47:53 -04:00
Irene Rodriguez
22ad1cc16f update minimum supported version for MySQL (#92356) 2024-08-26 10:39:02 -04:00
Julien Duchesne
3ac8760321 OpenAPI: Fix ValidationError message attribute (#90846)
It's `message`, not `msg`. It's been fixed for a while here: 9ef6983612/scripts/pull-schema.sh (L46-L49)

I've also reflected the change in the tests
2024-08-26 10:05:37 -04:00
Julien Duchesne
087df1d8e5 OpenAPI: Fix alerting DeleteMuteTiming errors (#91109)
The `GenericPublicError` is not what is actually returned by the API. Using `PublicError` describes the API correctly
2024-08-26 10:04:36 -04:00
Julien Duchesne
0075abe383 OpenAPI: Fix ProvisionedAlertRule.for type (#90841)
This override has been in the client for a while now: 9ef6983612/scripts/pull-schema.sh (L34-L39)

The API expects a string here and transforms it to a duration internally
2024-08-26 10:04:15 -04:00
Erik Sundell
1373b37166 Plugin Extensions: E2E test addLink and legacy APIs (#92394)
* cleanup tests

* more cleanup

* added links

* test legacy hooks

* test legacy hooks

* update codeowners

* revert package changes

* add project specfic example script

* remove console log

* Update .github/CODEOWNERS

Co-authored-by: Timur Olzhabayev <timur.olzhabayev@grafana.com>

* Update CODEOWNERS

* use correct file names

* cleanup tests

---------

Co-authored-by: Timur Olzhabayev <timur.olzhabayev@grafana.com>
2024-08-26 16:01:32 +02:00
Lucy Chen
a2de893ab3 ShareModal: Change public dashboard text to shared dashboard (#92327)
* update text

* update link
2024-08-26 09:56:48 -04:00
Aaron Godin
7623a844ba Add test-go-unit-pretty (#91645)
Add make task for executing go test over a set of files and piping to tparse
2024-08-26 08:32:42 -05:00
Bogdan Matei
605bc811d2 Scopes: Group suggested dashboards (#92212) 2024-08-26 16:08:27 +03:00
Kristina
1dd830b9f1 Correlations: Migrate config type to root (#91855)
* WIP

* Validate new field, and add value in provisioning if not defined in correct spot

* Simplify logic, use correct value

* fix tests

* Fix linter errors

* fix swagger and tests

* 😬

* Auto-generation isnt doing this..

* Fix linter

* test if nullable is the issue…

* Change structure on the frontend fields

* Try with backtick

* try programatic quoting

* Try only quote non-ints

* quoting, no backticks

* Remove debugging
2024-08-26 08:02:48 -05:00
Kyle Brandt
84e5c3af22 Prometheus/Promlib: Remove the PrometheusDataplane feature so always enabled (#92218)
This has been default behavior since v10

---------

Co-authored-by: Brendan O'Handley <brendan.ohandley@grafana.com>
2024-08-26 08:53:38 -04:00
Hugo Kiyodi Oshiro
fa95eb8c02 Plugins: Fix big query credentials and improve detailed report errors (#92373)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-08-26 13:46:24 +02:00
Sonia Aguilar
116f29be74 Alerting: Update starting version for central ash (OSS users) (#92399)
* Update starting version for central ash (OSS users)

* Update version

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>

---------

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2024-08-26 11:41:38 +00:00
Mihai Doarna
096c25a285 Docs: Update TLS info from the LDAP config example (#91975)
* update TLS info from the LDAP config example

* address feedback
2024-08-26 12:43:01 +03:00
Konrad Lalik
30035b2367 Alerting: Fix invalid loading condition for vanilla Prometheus rules (#92390)
Remove invalid loading condition
2024-08-26 11:39:53 +02:00
Torkel Ödegaard
f990759633 Dashboards: Fixes timing issue when restoring scroll position (#92342) 2024-08-26 10:08:59 +02:00
Haris Rozajac
4015711133 Query Library: Interaction events for query library (#92159)
Some checks failed
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Sync to mirror / trigger_downstream_patch_mirror (push) Has been cancelled
/ Alerting Swagger spec generation cron job (push) Has been cancelled
* interaction events for query library

* track adding or editing description

* Update to specify it's in explore
2024-08-23 16:17:38 -06:00
Lucy Chen
bef7139af0 Sharing Redesign: Export feedback changes (#92346)
* adjust height of codeEditor

* 75%
2024-08-23 16:09:02 -04:00
Joseph Perez
8cc95a7459 Docs: Edit contribute/style-guides (part 11 of doc improvement project) (#92169)
Some checks failed
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Has been cancelled
publish-technical-documentation-next / sync (push) Has been cancelled
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
* Docs: edit contribute/style-guides

* Add missing 'is'

* Improve grammar of code comment

* Prettier fixes

* Minor fix

* Minor fix

---------

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-08-23 08:08:04 -07:00
linoman
ca66133636 SSO LDAP - Address pending PR review comments (#92368)
* Address pending PR review comments

* Update i18n
2024-08-23 16:35:00 +02:00
Konrad Lalik
494376c5a9 Alerting: Fix resample expression and relativeTimeRange updates (#91689)
* Use dag to find origin nodes when updating resample queries

Co-authored-by: Gilles De Mey <gilles.demey@grafana.com>

* lint

* fix test and types

* short-circuit function

* Prevent cycles in DAG

* Handle dag cycle error

* Catch the cyclic link error in dashboard variables

---------

Co-authored-by: Gilles De Mey <gilles.demey@grafana.com>
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2024-08-23 15:22:33 +02:00
SADIK KUZU
b4e7329543 Docs: Fix typo in installation/debian/index.md (#92040)
Fix typo in installation/debian/index.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-08-23 06:44:11 -05:00
Karl Persson
ddee95cb6d Team: Create permission type for team membership (#92352)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
golangci-lint / lint-go (push) Has been cancelled
* Create permission type enum for team and remove usage of dashboard permission type
2024-08-23 12:34:34 +02:00
Arati R.
927ce6c700 Provisioning: Allow startup when there are dashboard provisioning failures (#92201)
* Stop returning an error if dashboard provisioning fails
* Test that Run() does not error when dashboard provisioning fails
2024-08-23 11:48:42 +02:00
Tito Lins
4a124469fa Check is config is default by comparing hashes (#92296) 2024-08-23 11:22:06 +02:00
Andres Martinez Gotor
a990b77c70 Add preinstall feature to defaults.ini (#92347) 2024-08-23 10:32:23 +02:00
Erik Sundell
d8ec95e9b1 E2E: Add support for building test plugins (#91873)
* build test apps with webpack

* add extensions test app

* update e2e tests

* remove non-build test apps using amd

* use @grafana/plugin-configs rather than create-plugin config

* Update e2e/plugin-e2e/plugin-e2e-api-tests/as-admin-user/extensions/usePluginComponents.spec.ts

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

* Update package.json

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

* use run dir variable instead of hardcoded path

* add dummy licence file

* add separate step for building test plugins

* support nested plugins

* remove react-router-dom from the externals array

* remove add_mode dev

* lint starlark

* pass license path as env variable

* fix the path

* chore(e2e-plugins): clean up dependencies to match core versions

* refactor(e2e-plugins): prefer extending webpack plugins-config

* docs(e2e-plugins): add basic info to extensions test plugin readme

* update readme

* change dir name from custom plugins to test plugins

* change root readme

* update lockfile

---------

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2024-08-23 09:00:03 +02:00
Alex Khomenko
0af4a20b58 Routing: Import useLocation from compat package (#92071)
* Routing: Import useLocation from compat package

* Add ComparRouter

* Add CompatRouter

* Fix tests

* Add CompatRouter to TestProvider

* Use findBy

* Remove AppChromeService

* Remove historyOptions

* Routing: Fix alerting/test utils issues from react compat router usage (#92127)

* Use render from test-utils

* Use compat router

* Convert more tests

---------

Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
2024-08-23 09:54:13 +03:00
Isabel Matwawana
d24b21d3ef Docs: update cell inspect behaviour (#92334)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-08-22 21:26:42 +00:00
Kevin Yu
3d3879fe6c List Aurora as an enterprise plugin (#92292) 2024-08-22 14:05:59 -07:00
Sven Grossmann
ec857e1de9 Loki: Add dashboard and panel names as headers (#92096)
* feat(nameHeaders): add feature flag

* add safe parsing of headers

* use headers in loki datasource

* Loki: add option to pass headers to Loki

* Loki: add datasource tests for dashboard names

* cleanup

* DataSourceWithBackend: add test

* rename to `sanitizeHeader`

* Loki: add condition when to add headers

* Loki: add e2e tests

* Loki: change test name
2024-08-22 21:30:43 +02:00
Joseph Perez
a7b57be04f Docs: Edit style-guides (part 12 of doc improvement project) (#92263)
* Docs: Edit style-guides (part 12)

* Update contribute/style-guides/storybook.md

* Prettier fixes
2024-08-22 12:15:12 -07:00
Joseph Perez
8f807a2df7 Docs: Fix broken link in developers/contribute (#92328) 2024-08-22 11:35:54 -07:00
Marcus Andersson
95409f53d2 Bugfix: QueryField typeahead missing background color (#92216)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Has been cancelled
Update `make docs` procedure / main (push) Has been cancelled
Run dashboard scenes e2e / dashboard-scenes-e2e (push) Has been cancelled
Added missing styles to the typeahead menu.
2024-08-22 16:16:48 +01:00
linoman
9fbfaf08a6 SSO LDAP: Add LDAP settings drawer (#92199)
* Add LdapDrawer component

* Add success message for discarding LDAP settings

* Add Use SSL tooltip

* Add min tls version field

* Change alert error to alert success

* Add tls ciphers field

* Update i18n

* rename ssl for tls

* rename ldap to LDAP
2024-08-22 17:16:18 +02:00
Christian Inkster
922babb157 Alerting: Add mutex to Redis HA subs (#89870) 2024-08-22 16:01:33 +01:00
renovate[bot]
81935a3af1 Update dependency @grafana/experimental to v1.8.0 (#92283)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-22 15:50:27 +01:00
Alexander Akhmetov
832bb01f36 Alerting: Add MQTT notifications receiver (#91487)
* Alerting: Add MQTT notifications receiver
* Update alerting to 9daa6239cc41dc42bff0e916c8d0d27766caa8b9 (main)
---------

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2024-08-22 16:47:48 +02:00
Victor Marin
9c73916f09 Fix tests failing due to harcoded date (#92293)
fix tests failing due to harcoded date
2024-08-22 17:27:40 +03:00
Isabel Matwawana
69f50b3e88 Docs: remove aliases from incorrect files (#92244) 2024-08-22 10:24:50 -04:00
Irene Rodriguez
3999b4b616 Added admonition about time zones (#92288)
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-08-22 14:08:57 +00:00
Affan Amir Mir
4aecb02be2 Update index.md with instructions to install plugins for helm (#92180)
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-08-22 17:06:36 +03:00
Andres Martinez Gotor
c20ba5b09d Add some basic stats for plugin preinstalls (#92220) 2024-08-22 16:17:27 +03:00
William Wernert
dfbddd8262 Alerting: Fix recording rule export (#91405)
* Fix HCL export

* Update rule export struct to support new optional fields

* Omit `for` field in export API if empty
2024-08-22 09:04:21 -04:00
Gilles De Mey
00381711a4 Alerting: useProduceNewRuleGroup for creating / updating alert rules. (#90497)
Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
2024-08-22 15:57:23 +03:00
renovate[bot]
c315c2719d Update dependency stylelint to v16.8.2 2024-08-22 12:33:59 +00:00
Andres Martinez Gotor
1b336e94c8 Chore: Check version compatibilty when installing a plugin (#92200) 2024-08-22 13:47:00 +02:00
renovate[bot]
f188da7b65 Update dependency rudder-sdk-js to v2.48.16 2024-08-22 11:38:21 +00:00
Torkel Ödegaard
3e84b2ba2f Dashboard: Fixes closing share modal (#92267) 2024-08-22 13:35:24 +02:00
renovate[bot]
7b9843bc13 Update babel monorepo to v7.25.4 2024-08-22 10:30:18 +00:00
Aaron Godin
0176ead117 feat: Add new read filtering to datasources guardian (#91345)
* feat: Add new read filtering to datasources guardian

* Apply suggestion to use datasources read guardian check for frontend settings

---------

Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>
2024-08-22 11:26:46 +01:00
renovate[bot]
94a119ac63 Update dependency ol-ext to v4.0.23 2024-08-22 10:09:11 +00:00
Alex Khomenko
022892ef72 Routing: Add CompatRouter to tests (#92114)
* Add CompatRouter

* Fix tests

* Add CompatRouter to TestProvider

* Use findBy

* Remove AppChromeService

* Remove historyOptions

* Routing: Fix alerting/test utils issues from react compat router usage (#92127)

---------

Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
2024-08-22 13:05:12 +03:00
renovate[bot]
7bee9d5e0f Update dependency knip to v5.27.3 2024-08-22 09:37:17 +00:00
Ieva
41ac5b5ae7 RBAC: Fix an issue with server admins not being able to manage users in orgs that they don't belong to (#92024)
* look at global perms if user is not a part of the target org

* use constant

* update tests
2024-08-22 10:04:06 +01:00
Sven Grossmann
40cdfeb00b Loki: Add logsample supporting query type (#92082)
* Loki: Add `logsample` supporting query type

* use `SupportingQueryType`

* add missing test
2024-08-22 09:12:50 +02:00
Konrad Lalik
db711d6a21 Alerting: Allow groups and namespaces with slashes (#92183)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
* Allow rule groups and namespaces with slashes

* Fix lint
2024-08-22 08:16:28 +02:00
Brendan O'Handley
130a86d9c7 Explore metrics: Improve performance for build layout (#92238)
* revert buildLayout

* filter metric names using metricPrefix using regex

* build groups with all the metric names and only build them once

* remove commented code

* use the metrics search input results to build the prefix select options

* simplify prefix regex because we do not have to do it at the same time as the metrics search input regex
2024-08-21 20:53:44 -05:00
Lucy Chen
2ad9d8cafe ShareModal: delete shareView query param from url (#92243)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
2024-08-21 19:36:20 -03:00
Todd Treece
733ae1f099 Chore: Skip gzip for apiserver routes (#92245) 2024-08-21 23:47:58 +03:00
Todd Treece
e4953b6ffd Chore: Add Dockerfile CI check for new modules (#92239) 2024-08-21 16:25:25 -04:00
Todd Treece
a86ded2438 Chore: Add apistore dependency (#92240) 2024-08-21 16:22:45 -04:00
Todd Treece
2f01286034 Storage: Add go.mod for apistore (#92224) 2024-08-21 14:32:01 -04:00
Kristin Laemmert
2d0350e786 add spans to search v2 (#92223)
add tracing spans to search v2 service
2024-08-21 13:26:34 -04:00
Kristin Laemmert
aa913b5f39 chore: add tracing to quote API and service methods with contexts (#92211)
* chore: add tracing to quote API and service methods with contexts

I also fixed a typo (overriden -> overridden) and removed a method that looked like it wasn't useful anymore. (It seemed to exist to return an error, but never returned an error, and so just added many lines of unnecessary error checking).
2024-08-21 13:24:45 -04:00
Ryan McKinley
2136fd9a92 Storage: Remove unified storage feature flag (#92192)
remove unified storage flag
2024-08-21 19:28:30 +03:00
renovate[bot]
71f0dae39e Update dependency mini-css-extract-plugin to v2.9.1 2024-08-21 16:16:12 +00:00
Todd Treece
2d43fdb29b Aggregator: Add mutation and validation handlers (#92036) 2024-08-21 19:12:53 +03:00
renovate[bot]
6891eb1d35 Update dependency knip to v5.27.2 (#92214)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-21 16:51:23 +01:00
Ashley Harrison
9f8e68e9a1 Docs: Update adhoc filter documentation (#92197)
update adhoc filter documentation
2024-08-21 16:50:32 +01:00
Dave Henderson
df3d8915ba Chore: Bump Go to 1.23.0 (#92105)
* chore: Bump Go to 1.23.0

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

* update swagger files

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

* chore: update .bingo/README.md formatting to satisfy prettier

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

* chore(lint): Fix new lint errors found by golangci-lint 1.60.1 and Go 1.23

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

* keep golden file

* update openapi

* add name to expected output

* chore(lint): rearrange imports to a sensible order

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

---------

Signed-off-by: Dave Henderson <dave.henderson@grafana.com>
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2024-08-21 11:40:42 -04:00
brendamuir
02c820382d Alerting docs: separates doc on create alerts from panels (#92131)
* Alerting docs: separates doc on create alerts from panels

* deletes previous panel section

* adds time series limitation and play link

* removes play from old topic

* ran prettier

* removed play shortcode, typo

* adds feedback from gilles

---------

Co-authored-by: tonypowa <tonypowa@gmail.com>
2024-08-21 17:20:59 +02:00
Ashley Harrison
e675455502 PublicDashboards: Fix public dashboards when publicDashboardsScene is enabled (#92187)
* fix public dashboards pages when publicDashboardsScene is enabled

* properly handle react-grid-layout at small screen sizes

* use unset instead of auto
2024-08-21 16:16:12 +01:00
Kristin Laemmert
a04d2f44f8 chore: add spans to publicdashboards service methods (#92149)
* chore: add spans to publicdashboards service methods

* add tracing to test service

* test fixture whackamole

* move tracer to a package var

* Update pkg/services/publicdashboards/service/service.go

Co-authored-by: Dave Henderson <dave.henderson@grafana.com>

---------

Co-authored-by: Dave Henderson <dave.henderson@grafana.com>
2024-08-21 10:55:16 -04:00
Andres Martinez Gotor
21bf013a8e Add support for synchronous plugin installation (#92129)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-08-21 16:11:55 +02:00
Torkel Ödegaard
801f2ba728 DashboardScene: Support remember scroll position when coming back from view panel, panel edit and settings (#92185)
* DashboardScene: Support remember scroll position when coming back from view panel, panel edit and settings

* remove unused state prop

* Update

* Fixes

* Update e2e
2024-08-21 14:05:07 +00:00
Leonor Oliveira
81ce3c92d5 Remove optionsStorage and labelSelector (#92196) 2024-08-21 15:44:38 +02:00
Diego Augusto Molina
9a65d0a977 Storage: remove sqlstore.WrapDatabaseDriverWithHooks (#92111)
remove sqlstore.WrapDatabaseDriverWithHooks from Unified Storage after related incident
2024-08-21 10:31:34 -03:00
Ryan McKinley
2e60f28044 Auth: remove id token flag (#92209) 2024-08-21 16:30:17 +03:00
renovate[bot]
302bfe3edf Update dependency i18next-parser to v9.0.2 2024-08-21 13:24:51 +00:00
Matias Chomicki
1b6db3da22 Loki language provider: don't cache empty array while querying (#92092)
* Loki language provider: don't cache empty array while querying

* Prettier

* Unfocus test

* chore: add extra assertion
2024-08-21 13:07:01 +00:00
Torkel Ödegaard
4bc64dd747 Page/Body: Only show scrollbar lane gutter when needed (#92186)
* Page/Body: Only show scrollbar lane gutter when needed

* Update packages/grafana-ui/src/themes/GlobalStyles/elements.ts

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

---------

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2024-08-21 14:44:12 +02:00
Fayzal Ghantiwala
8d725a641c Alerting: Integration test for testing template via remote alertmanager (#92147)
* Add integration test for testing template

* Update drone signature
2024-08-21 13:06:01 +01:00
renovate[bot]
237f8c7bac Update dependency downshift to v9.0.8 2024-08-21 11:53:12 +00:00
Ryan McKinley
9563c896ee Playlists: limit the total number of playlists (#92132) 2024-08-21 14:49:28 +03:00
Ashley Harrison
4d82139a33 Chore: Migrate _button SCSS styles to emotion globals (#92135)
migrate button styles to emotion globals
2024-08-21 12:46:30 +01:00
renovate[bot]
f26258984a Update dependency core-js to v3.38.1 2024-08-21 11:30:50 +00:00
renovate[bot]
9494e9b847 Update dependency @types/react-transition-group to v4.4.11 2024-08-21 10:58:24 +00:00
renovate[bot]
ef832219ed Update dependency @types/ini to v4.1.1 2024-08-21 10:04:09 +00:00
Ashley Harrison
292982f30b Collapse: stop cropping focus rings (#92190)
remove overflow: hidden; from bodyContentWrapper
2024-08-21 11:01:53 +01:00
renovate[bot]
584559d3c2 Update dependency @react-awesome-query-builder/ui to v6.6.3 2024-08-21 09:33:03 +00:00
renovate[bot]
a8c6000c19 Update dependency @prometheus-io/lezer-promql to v0.53.2 (#92148)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-21 09:49:14 +01:00
Will Browne
aea8b60849 Plugins: Add support for fetching plugin includes from plugin CDN (#91476)
* update oss side

* add Rel func to plugins.FS

* update tests

* add comment

* fix fs paths for nested plugin

* fix test

* fix sources

* fix cdn class bug

* update tests

* remove commented out code
2024-08-21 09:46:41 +01:00
Victor Marin
e7c628f4e7 Bump scenes to 5.10.1 (#92140)
* bump scenes to 5.10.1

* mock config version

* refactor

* refactor
2024-08-21 11:45:37 +03:00
Ida Štambuk
0c55d0aa64 Features: Move openSearchBackendFlowEnabled toggle to GA (#92117) 2024-08-21 10:21:57 +02:00
Karl Persson
b6540e2a18 SSOSettings: Add api:s (#92018)
* apis: add sso setting resource

* Implement Storage for sso

* Rename packages

* Merge identity and sso package

* Update table format and expose GetNestedBool

* Restructure identity api package
2024-08-21 09:16:47 +02:00
Diego Augusto Molina
80a69319b0 WebAssets: improve checks and error messages on dtos (#92093)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Has been cancelled
publish-kinds-next / config (push) Has been cancelled
publish-kinds-next / main (push) Has been cancelled
fix web assets check and improve error message
2024-08-20 18:35:48 -03:00
Yuri Tseretyan
d27c3822f2 Alerting: Add Create and Update methods to Template service (#91981)
* rename SetTemplate to UpsertTemplate

* Introduce Create\Update methods

* update api endpoint to use GetTemplate
2024-08-20 15:23:01 -04:00
Kyle Brandt
cab5818bc7 Scopes: Add groups property to ScopeDashboardBinding (#92077)
- Note: The `dashboardTitle` property and this property (`groups`) are likely to move from the `spec` container to the `status` container within the `scopeDashboardBinding` object in the future.
2024-08-20 19:32:16 +03:00
renovate[bot]
15a623c344 Update dependency @playwright/test to v1.46.1 2024-08-20 16:03:07 +00:00
linoman
eecd56659c LDAP: SSO Configuration page (#91875)
* Init screen for LDAP UI

* add ldap drawer

* update routes

* update definitions

* add definitions for ldap configurations

* improve readibility

* remove whitespace

* clean up

* Adjust LdapSettingsPage

* adjust form autocomplete from backend call
2024-08-20 17:31:13 +02:00
Alexa V
cd4b7ef9db Dashboard Scene: Fix snapshots not displaying variables values (#88967)
* Use new snapshot variables from scenes

* Add snapshotVariable implementation

* Refactor: Extract variables logic from transforSaveModelToScene file

---------

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2024-08-20 17:05:12 +02:00
Gilles De Mey
6f63def283 Alerting: Fix long Alertmanager names overflowing the window (#92023)
fix long names overflowing the window
2024-08-20 17:02:35 +02:00
brendamuir
0631322d36 Alerting docs: adds sns integration (#92075)
* Alerting docs: adds sns integration

* deletes 2000 alert rule limit

* added .md ext and set weight field to 0

---------

Co-authored-by: tonypowa <tonypowa@gmail.com>
2024-08-20 16:22:07 +02:00
Sergej-Vlasov
5bfce7f590 DashboardGridItem - increase timeout in flaky panel repeat test (#92133)
increase timeout in flaky panel repeat
2024-08-20 17:19:28 +03:00
renovate[bot]
17fd8a6bc3 Update dependency @msagl/parser to v1.1.22
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Has been cancelled
2024-08-20 14:01:04 +00:00
Lucy Chen
1056cc6a0d Share Panel: Library panels feature (#91419) 2024-08-20 09:56:10 -04:00
Leon Sorokin
74ebc66520 VizTooltip: Fix positioning at bottom and right edges on mobile (#92042) 2024-08-20 08:48:37 -05:00
Will Browne
d35e9264bb Plugins: Use plugins SDK constants for OAuth header names (#90892)
use SDK consts
2024-08-20 13:29:41 +01:00
Diego Augusto Molina
e788df921c Storage: always use transactions and make them readonly when possible (#92110)
* always use transactions and make them readonly when possible

* fix linters

* fix reference
2024-08-20 09:29:06 -03:00
Will Browne
704b07b3f0 Plugins: Bump plugin SDK to latest (0.244.0) (#92057)
bump SDK
2024-08-20 14:40:51 +03:00
renovate[bot]
8b11040b05 Update dependency @msagl/core to v1.1.22 2024-08-20 11:23:27 +00:00
renovate[bot]
1525ee1a04 Update dependency @lezer/highlight to v1.2.1 2024-08-20 10:23:17 +00:00
David Harris
24dad802c9 chore: update plugin schema for ui extensions (#92121)
chore: update plugin.schema.json

Follow up to https://github.com/grafana/plugin-tools/pull/1060/
2024-08-20 11:20:21 +01:00
renovate[bot]
90c5845b72 Update React Aria 2024-08-20 09:36:55 +00:00
Alexander Akhmetov
d32e1e009b Alerting: Update prometheus/client_golang to v1.20 (#92070)
Update prometheus/client_golang to v1.20
2024-08-20 11:26:06 +02:00
renovate[bot]
d9812153dd Update dependency typescript to v5.5.4 (#91678)
* Update dependency typescript to v5.5.4

* fix missing typeof

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2024-08-20 10:11:57 +01:00
Sergej-Vlasov
7c8184d5bf DashboardModel - Add fallback for variable current value fallback (#91833)
* add variable current value fallback when null

* refactor to avoid loosing reference
2024-08-20 11:55:04 +03:00
Ieva
2e9cbda448 Docs: Add cloud label to doc articles (#92007)
* add service account docs to cloud docs

* also add label to RBAC docs
2024-08-20 09:52:04 +01:00
Ashley Harrison
ab312914cd Chore: cleanup util SCSS styles (#92078)
migrate SCSS util classes
2024-08-20 09:31:04 +01:00
Laura Benz
e7b6b4cf34 RestoreDashboards: Add folder picker to restore modal (#91945)
* feat: add folder picker

* feat: run i18n extraction

* feat: add target folder to api query

* feat: hand over targetFolder data to api query

* feat: retrieve original location

* feat: Add condition for folder picker

* feat: Modify condition for folder picker default

* refactor: add changes from code review

* refactor: add changes from code review

* feat: add plural to translation, add styling

* feat: run i18n extraction
2024-08-20 10:08:18 +03:00
Ihor Yeromin
5233e4b47f Stat: Fix double-zero percent render (#91848)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
fix(stat): percent zero case
2024-08-20 04:25:15 +03:00
Pepe Cano
a0e1028ae6 Alerting docs: include Grafana Alerting API as one option to manage… (#91593)
Alerting docs: include `Grafana Alerting API` as one option to manage Data sources-mangaged resources
2024-08-20 00:03:07 +02:00
owensmallwood
1cb3470e3e Unified Storage: Wrapping the mysql driver with hooks causes issues (#92099)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
dont wrap the mysql driver with hooks. Its causing the error 'begin tx: sql: driver does not support non-default isolation level'.
2024-08-19 15:09:25 -06:00
Todd Treece
b97fb3bb78 Chore: Update storage and search feature toggle owners (#92098) 2024-08-19 16:57:00 -04:00
Alexander Weaver
ac5ebe6e4d Alerting: Add enablement flag for recording rules (#92032)
* Add enablement flag

* Disable if toggle not enabled
2024-08-19 12:01:00 -05:00
Dan Cech
9020eb4b17 Auth: Update oauthtoken service to use remote cache and server lock (#90572)
* update oauthtoken service to use remote cache and server lock

* remove token cache

* retry is lock is held by an in-flight refresh

* refactor token renewal to avoid race condition

* re-add refresh token expiry cache, but in SyncOauthTokenHook

* Add delta to the cache ttl

* Fix merge

* Change lockTimeConfig

* Always set the token from within the server lock

* Improvements

* early return when user is not authed by OAuth or refresh is disabled

* Allow more time for token refresh, tracing

* Retry on Mysql Deadlock error 1213

* Update pkg/services/authn/authnimpl/sync/oauth_token_sync.go

Co-authored-by: Dan Cech <dcech@grafana.com>

* Update pkg/services/authn/authnimpl/sync/oauth_token_sync.go

Co-authored-by: Dan Cech <dcech@grafana.com>

* Add settings for configuring min wait time between retries

* Add docs for the new setting

* Clean up

* Update docs/sources/setup-grafana/configure-grafana/_index.md

Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>

---------

Co-authored-by: Mihaly Gyongyosi <mgyongyosi@users.noreply.github.com>
Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
2024-08-19 18:57:37 +02:00
Ashley Harrison
5ce9324801 fix nav border when bodyscrolling with sticky variables (#92087)
* fix nav border when bodyscrolling with sticky variables

* better fix
2024-08-19 18:59:46 +03:00
qiyang
950d5630a0 Docs: Update configure-prometheus-data-source.md (#92049)
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-08-19 17:43:33 +03:00
Larissa Wandzura
7ff8b1e0e2 Docs: Create new landing page and Get started doc for Explore (#91602)
* started updates

* added descriptions

* changed some wording

* minor updates

* updates

* updates

* created new landing page, and the get started page

* finished creating landing page

* continued with restructure

* final edits

* updated the Explore landing page

* ran prettier

* Update docs/sources/explore/get-started-with-explore.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* Update docs/sources/explore/get-started-with-explore.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* Update docs/sources/explore/get-started-with-explore.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* Update docs/sources/explore/get-started-with-explore.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* Update docs/sources/explore/get-started-with-explore.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* Update docs/sources/explore/get-started-with-explore.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* Update docs/sources/explore/get-started-with-explore.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* Update docs/sources/explore/get-started-with-explore.md

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>

* updates based on Jack's feedback

* ran prettier a second time

* wording change on landing page

* removed uncommented section

---------

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-08-19 09:30:51 -05:00
Tom Ratcliffe
e2a1d59a96 Alerting: Remove disable logic for name field on time intervals when using k8s API (#91885)
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2024-08-19 14:53:12 +01:00
Torkel Ödegaard
43dba8c3f9 DashboardScene: Support bodyScrolling (#91888)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
* Progress

* Fix dashboards pane

* almost working

* add hook to get scopesDashboardsScene state

* check whether it's enabled when considering opened state

* add height to container

* Update

* revert change

* Make it work when bodyScrolling is disabled

* Last tweaks

* Update scenes

* Updating

* Fix

* fix tests

* fix lint  issues

* fix lint  issues

---------

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2024-08-19 15:42:45 +02:00
Seungyong Lee
7647c689f1 Docs: Revise Configure Prometheus documentation to align with Grafana v11.1 (#91852) 2024-08-19 12:17:10 +00:00
Ryan McKinley
65a7d8f023 Chore: Fix panic with golang 1.23 (#92055) 2024-08-19 13:31:01 +03:00
Juan Cabanas
a50b5564be ShareModal: shareView query param fix (#92020) 2024-08-19 07:28:54 -03:00
renovate[bot]
8d197387ed Update dependency @grafana/tsconfig to v2 (#92056)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-19 13:13:33 +03:00
Laura Fernández
84e0aa1ccd RestoreDashboard: Avoid overwrite when saving dashboard triggers a 'name-exists' error (#91881) 2024-08-19 11:31:40 +02:00
Joey
41fc6ab89e Tempo: Update max options (#92050)
* Update max options

* Update limit
2024-08-19 10:26:55 +01:00
Ryan McKinley
9567275365 SQL: Add more legacy helpers (#92006) 2024-08-19 12:15:43 +03:00
Alexander Zobnin
87c4f2448c Zanzana: Use modular schema (#92001)
* Zanzana: Use modular schema

* Fix tests

* Add module transform tests
2024-08-19 11:10:51 +02:00
Ashley Harrison
dcdef1a02d TextPanel: Prevent panel crashing when interpolating variables results in empty content (#92019)
fix text panel crashing when interpolating variables results in empty content
2024-08-19 09:45:58 +01:00
Erik Sundell
134467fc4a Plugin Extensions: Introduce new registry for exposed components (#91748)
* refactor app plugin internals

* add base registry and exposed components registry

* refactor usePluginComponent hook

* change type name

* fix hook

* remove comments

* fix broken tests

* add more tests

* remove link and component related changes

* use right id format

* add title prop

* remove comments

* rename registry

* make exportedComponentsConfigs required

* fix broken test

* cleanup tests

* fix prop name

* remove capability related code

* rename exported to exposed

* refactor(extensions): make registry types generic

* Update public/app/features/plugins/extensions/registry/ExportedComponentsRegistry.test.ts

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

* fix levitate error

---------

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
2024-08-19 08:43:11 +02:00
Todd Treece
4a753dd2d5 Chore: Switch dev profiling address to 127.0.0.1:6000 (#91916)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-08-18 13:45:55 -04:00
Drew Slobodnjak
d3c6e2b203 Table: Avoid rtl when using datalinks with units (#92038)
Some checks failed
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
golangci-lint / lint-go (push) Has been cancelled
Sync to mirror / trigger_downstream_patch_mirror (push) Has been cancelled
/ Alerting Swagger spec generation cron job (push) Has been cancelled
2024-08-16 15:42:20 -07:00
Jeff Levin
028e8ac59e Instrument tracing across accesscontrol (#91864)
Instrument tracing across accesscontrol 

---------

Co-authored-by: Dave Henderson <dave.henderson@grafana.com>
2024-08-16 14:08:19 -08:00
Brendan O'Handley
68f545210d Prometheus: Fix label names select component when there are too many options (#92026)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
publish-technical-documentation-next / sync (push) Has been cancelled
* add more doc info for truncate function and how we use it

* truncate label names and allow users to search all labels on typing

* remove unused import

* handle labels select in variable query in addition with truncated list
2024-08-16 13:55:03 -05:00
Todd Treece
def8104e74 Aggregator: Prepare for new handlers (#92030) 2024-08-16 14:13:38 -04:00
Yuri Tseretyan
135f6571a9 Alerting: Update Time Interval service to support renaming of resources (#91856)
* add RenameTimeIntervalInNotificationSettings to storage
* update dependencies when the time interval is renamed
---------

Co-authored-by: William Wernert <william.wernert@grafana.com>
2024-08-16 20:55:03 +03:00
Drew Slobodnjak
3c5d799c8c BarChart: Prevent label clipping at top (#91990)
* BarChart: Prevent label clipping at top

* Fix const issue
2024-08-16 09:29:25 -07:00
Lu Shueh Chou
126169f3ca Alerting: Add LogicOr operation option (#89258)
---------

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2024-08-16 11:02:14 -04:00
Irene Rodriguez
62abaea8f5 Capitalized list items under "With Explore Metrics, you can:" (#91879)
capitalised list items under "With Explore Metrics, you can:"
2024-08-16 09:01:53 -05:00
Isabella Siu
6000d6a1ad ElasticSearch: Neaten up vars/consts (#91989)
ElasticSearch: neaten up vars/consts
2024-08-16 09:42:39 -04:00
Todd Treece
a12b372556 Plugins: Update missed ConversionHandler checks (#92011) 2024-08-16 16:10:32 +03:00
Joey
ca56f16615 Tempo: Improve performance of drop down in variable query editor (#92010)
Improve performance of drop down
2024-08-16 14:07:09 +01:00
Tobias Skarhed
b0031c0781 New Select: Set highlighted index to selected item on open (#91951)
* Set highlighted index on open

* Remove console log

* Use defaultHighLightedIndex
2024-08-16 14:47:39 +02:00
Ryan McKinley
f432a1713b SQLTemplate: Swap the IFace with the concrete struct (#92008)
Some checks failed
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
2024-08-16 15:12:37 +03:00
Ashley Harrison
32a5651e96 Chore: Remove breakpoints SCSS (#91883)
remove breakpoints mixins
2024-08-16 12:38:26 +01:00
Ryan McKinley
d9cabe5e14 SQL: Add sql template test helper (#91953) 2024-08-16 14:36:56 +03:00
Ieva
ac72098248 RBAC: Update access action set toggle stage (#91976)
update access action set toggle stage
2024-08-16 13:57:09 +03:00
Andres Martinez Gotor
5bf6ffc315 Change plugin install config syntax (#91895) 2024-08-16 09:44:47 +02:00
Brendan O'Handley
f01263803a Prometheus: Add a limit for the series resource api in metrics browser (#91555)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Has been cancelled
* add a limit for the series resource api in metrics browser

* decouple serieslimit from options and only use in metrics browser

* add series limit input to metrics browser

* add warning

* add and fix tests

* add new param to jsdoc

* do not use the limit in other calls outside metrics browser

* update test

* trim limit

* fix tests, remove limit from non labels calls
2024-08-15 23:39:42 +03:00
Drew Slobodnjak
de0e6d0fce PanelInspect: Handle field type frame for csv export (#91983)
PanelInspect: Handle field type frame
2024-08-15 13:15:49 -07:00
Todd Treece
e60b0aef83 Plugins: Add support for ResourceConversion (#91977) 2024-08-15 16:02:21 -04:00
owensmallwood
28f2a4078d Unified Storage: Records grafana database metrics (#91932)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Has been cancelled
Update `make docs` procedure / main (push) Has been cancelled
Run dashboard scenes e2e / dashboard-scenes-e2e (push) Has been cancelled
* records grafana database metrics for unified storage

* update type to tracing.Tracer

* use nil for tracer in tests
2024-08-15 11:13:36 -06:00
Lucy Chen
d8ae905758 Change Public Dashboard text in Enterprise Users section (#91816)
* update text

* update tooltip

* add conditionals

* add conditions

* add conditionals

* fix conditionals
2024-08-15 13:09:01 -04:00
Matias Chomicki
4751bf915a Loki: Higlight search words in queries when using template variables (#91949)
* backendResultTransformer: use templateSrv to highlight search words from variables

* Add unit tests

* Formatting

* Fix import issues

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

Co-authored-by: Sven Grossmann <sven.grossmann@grafana.com>

* Refactor: use executedQueryString to get the interpolated query

* Remove unused imports

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

Co-authored-by: Sven Grossmann <sven.grossmann@grafana.com>

---------

Co-authored-by: Sven Grossmann <sven.grossmann@grafana.com>
2024-08-15 19:20:48 +03:00
Kristin Laemmert
c6ae2d7999 chore: add replDB to team service (#91799) 2024-08-15 12:19:38 -04:00
Fayzal Ghantiwala
e321dbb690 Alerting: Use remote Alertmanager to test templates and receivers when enabled (#91570)
* Initial impl

* Add code to test templates and receivers

* Fix linter

* Fix forked am tests

* Update mimir client

* Remove trailing whitespace

* re-trigger CI
2024-08-15 16:56:14 +01:00
Matthias Loibl
fbc195549f Parca: Update supported version to v0.19+ (#89826)
* pkg/tsdb/parca: Upgrade to using the flamegraph arrow

* pkg/tsdb/parca: Delete code for old flamegraphs

* pkg/tsdb/parca: Fix golangci-lint error in test

* pkg/tsdb/parca: Handle errors nicely

* docs/sources/datasource: Add Parca v0.19+ support note

* pkg/tsdb/parca: Don't use arrow table reader

As pointed out during reviews, it's not really needed and we can read the record directly.
2024-08-15 17:31:03 +02:00
Abdessamad Enabih
530355d5db Profile: Add tooltip to revoke session button (#91858)
* A11y: Buttons in profile/sessions do not provide tooltips

* Adressing PR comment for #91858
2024-08-15 18:24:38 +03:00
Matias Chomicki
40c6f741c0 Logs: Show older logs button when infinite scroll is enabled and sort order is descending (#91060)
* LogsNavigation: show older logs button when the order is descending

* LogsNavigation: adjust styles for showing only older logs button

* Logs Navigation: revert changes

* Infinite scroll: add older logs button

* Older logs button: show only in explore

* chore: add unit test

* Formatting

* Update public/app/features/logs/components/InfiniteScroll.test.tsx

Co-authored-by: Sven Grossmann <sven.grossmann@grafana.com>

* Chore: add missing translation

* Chore: move the button a tiny bit

---------

Co-authored-by: Sven Grossmann <sven.grossmann@grafana.com>
2024-08-15 18:17:47 +03:00
Santiago
f852bf684a Alerting: Fix duplicated silences in remote primary mode bug (#91902)
* Alerting: Fix duplicated silences in remote primary mode bug

* test that a new silence id returned by calling CreateSilence() on the internal Alertmanager is ignored
2024-08-15 17:14:55 +02:00
Kyle Cunningham
f14fd5828a Table panel: Improve cell inspector (#91862)
* Improve cell inspector

* Update types

* Prettier

* Type checking fixes
2024-08-15 22:04:36 +07:00
Alexander Zobnin
aaf33c7923 Zanzana: Migrate basic, fixed and custom roles (#91814)
* Zanzana: Migrate basic roles permissions

* add basic roles assignments

* refactor

* Sync basic roles permissions in all orgs

* migrate fixed roles

* map root folders to orgs

* fix basic role assignments in orgs

* migrate other roles

* migrate team roles assignments

* add notes about authorization schema

* don't migrate fixed roles
2024-08-15 16:13:27 +02:00
Kat Yang
4b0e8653f2 Refactor: Consolidate code for query generator (#91415)
* Refactor: Consolidate code for query generator

* Update public/app/features/trails/AutomaticMetricQueries/query-generators/default.ts

Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>

* fix: rename index.ts to getQueryGeneratorFor.ts to avoid barrel files

---------

Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>
2024-08-15 09:50:56 -04:00
Yuri Tseretyan
5834981f86 Alerting: Add GetTemplate to template service and update tests (#91854)
* add GetTemplate to template service
* refactor GetTemplates to fetch all provenances at once
* refactor tests
2024-08-15 09:17:48 -04:00
Mehrshad Lotfi
868f9320e9 CI: Fix missing vendor dependencies (#91872)
* Add missing dependency to Dockerfile

Add aggregator dependency to Dockerfile, fix the issue #91871.

* Add defaults.ini to Dockerfile, add bash for alpine
2024-08-15 09:02:15 -04:00
Joao Silva
42efb14989 Bookmarks: Move building logic to the Frontend (#91849) 2024-08-15 13:35:20 +01:00
Mihai Doarna
d6e793b31e SSO: Add server discovery URL on Generic OAuth config (#91047)
* add OpenID metadata URL field

* add i18n generated content

* configure server discovery URL in a modal

* remove getValues

* address feedback

* update field name to OpenID Connect Discovery URL

* add well-known suffix to the URL provided

* address feedback

* add isLoading state to ServerDiscoveryField
2024-08-15 15:00:25 +03:00
Ryan McKinley
a0cd89860e Identity: Add endpoint to get display info for an identifier (#91828)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
2024-08-15 14:38:43 +03:00
Alexander Akhmetov
c7fdf8ce70 Alerting: Add error to annotations on data source errors (#91594) 2024-08-15 12:34:50 +02:00
Karl Persson
5105fb7f3a Identity: remove GetIDClaims (#91901)
remove GetIDClaims
2024-08-15 11:39:13 +02:00
Ashley Harrison
2ac247be88 Navigation: Fix scope dashboards selector with bodyScrolling (#91892)
* almost working

* add hook to get scopesDashboardsScene state

* check whether it's enabled when considering opened state

* add height to container
2024-08-15 09:58:26 +01:00
Todd Treece
d6ce6aaf44 Aggregation: Support apidiscovery.k8s.io/v2 (#91938) 2024-08-15 04:39:53 -04:00
grafana-delivery-bot[bot]
675a58b680 Release: Bump version to 11.3.0-pre (#91863)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
* bump version 11.3.0-pre

* fix linters with: yarn run prettier:write

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Diego Augusto Molina <diegoaugustomolina@gmail.com>
2024-08-14 18:34:14 -03:00
Adela Almasan
f6b55ced6f Canvas: Remove null data links (#91859) 2024-08-14 23:58:39 +03:00
grafana-delivery-bot[bot]
38957b32ab Release: update changelog for 11.1.4 (#91930)
* Update changelog

* fix changelog

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Diego Augusto Molina <diegoaugustomolina@gmail.com>
2024-08-14 17:12:21 -03:00
Juan Cabanas
07500e11be ShareExternally: Rename public dashboard section (#91928) 2024-08-14 17:03:19 -03:00
Alexander Weaver
34ab5fe1f3 Alerting: Restart rule routines if the type changes (#90867)
* Restart when types change

* Wire up test hooks correctly

* testing
2024-08-14 14:57:47 -05:00
Todd Treece
f158d52ae4 Aggregator: Rename DataServiceType to QueryServiceType (#91929) 2024-08-14 22:28:57 +03:00
Kyle Cunningham
40144eb3c8 Table: Fix edge case where text wrapping crashes on undefined header widths (#91850)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
Make sure we don't read from header groups if it's undefined
2024-08-15 01:49:28 +07:00
grafana-delivery-bot[bot]
8c4da28d7c Release: update changelog for 11.0.3 (#91923)
* Update changelog

* fix changelog

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Diego Augusto Molina <diegoaugustomolina@gmail.com>
2024-08-14 15:47:21 -03:00
Isabel Matwawana
3087eae71d Docs: Add max logo size (#91800) 2024-08-14 13:53:09 -04:00
grafana-delivery-bot[bot]
648005e0bb Release: update changelog for 10.4.7 (#91908)
* Update changelog

* fix changelog

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Diego Augusto Molina <diegoaugustomolina@gmail.com>
2024-08-14 14:47:57 -03:00
Pepe Cano
98a74d844e Add grafana_state_reason section in State of alerts (#91562)
* Add `grafana_state_reason` section in State of alerts

* Minor edit for clarification

* Mention `Paused/RuleDeleted/Updated` states
2024-08-14 19:22:55 +02:00
Juan Cabanas
8a97143120 ShareDrawer: Share snapshot panel (#90678) 2024-08-14 13:15:47 -03:00
Kristina
7cc925d319 Query Library: Enable edit description (#90009)
* WIP

* Finish getting form to populate

* WIP API

* Get PUT to work although the edit doesnt apply yet

* Complete working PUT

* PATCH v1 no json patch

* This works!

* Fix headers to be configurable

* Fix translations

* Revert "This works!"

This reverts commit d57ffcbc4b.

# Conflicts:
#	public/app/features/query-library/api/factory.ts
#	public/app/features/query-library/api/query.ts
#	public/app/features/query-library/types.ts

* Use normal method of patching 😅

* Replace add to library form with generic version

* make translations generic

* Rename function, fix bad conflict resolution
2024-08-14 10:11:53 -05:00
Todd Treece
da6b02a2b0 K8s: Add k8s codegen PR check (#91903) 2024-08-14 11:06:37 -04:00
Andres Martinez Gotor
44290ddf32 Adapt plugin page to preinstalled plugins (#91874) 2024-08-14 17:04:59 +02:00
Mihai Doarna
340af8cf6b Docs: Update SAML docs after making the certificate/private key optional (#91202)
* update SAML docs after changing the certificate/private key to be optional

* fix link with example of how to generate saml credentials

* revert link
2024-08-14 18:02:57 +03:00
Bogdan Matei
b0dd3fb1a1 Scopes: Add extra-check for fetching dashboards (#91896) 2024-08-14 18:00:09 +03:00
Karl Persson
e9bb3b4d73 Annotations: only set userID if caller is a user or service account (#91898)
* Ignore errors when extracting current user id

* Only set userID if caller is user or service account

* Fix patch api
2024-08-14 16:07:15 +02:00
Torkel Ödegaard
db5d8f03b7 Drawer: Fixes incorrect mask background and flickering (#91890) 2024-08-14 16:04:35 +02:00
Juan Cabanas
b569c1610f ShareDrawer: Share embed panel (#90994) 2024-08-14 10:49:10 -03:00
Andres Martinez Gotor
55381a3e77 Add check for update/uninstall of plugins (#91889) 2024-08-14 14:57:37 +02:00
Ieva
134b9f731f RBAC: Hide root level folder creation button if the user doesn't have the right permissions (#91502)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
* hide root level folder creation button if the user doesn't have the right permissions

* linting
2024-08-14 11:53:03 +01:00
Karl Persson
8d36111420 IDForwarding: Set identity type and uid (#91830)
* Set identity type and uid

* Set uid without prefix

* Update authlib version

* Update to new claim name
2024-08-14 10:51:44 +02:00
Yulia Shanyrova
d1b0e70f8d Plugins: Remove cards and list display options functionality from plugin catalogue (#91840)
* remove displayMode functionality from plugin catalogue

* remove test for removed functionality

* fix linting
2024-08-14 10:24:10 +02:00
Ryan McKinley
427dad26a2 Swagger: Add a custom swagger/api page (#91785)
Co-authored-by: Kristian Bremberg <kristian.bremberg@grafana.com>
2024-08-14 09:03:00 +03:00
Todd Treece
dacf11b048 K8s: Fix hack/update-codegen (#91867) 2024-08-14 08:17:05 +03:00
David Allen
e90b272299 docs: add play link to explore metrics to demonstrate (#91744)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
2024-08-13 16:16:50 -05:00
Todd Treece
1b0e6b5c09 K8s: Data Plane Aggregator (#91228) 2024-08-13 22:28:17 +03:00
Todd Treece
4ce82d3f14 Chore: Update k8s.io dependencies to v0.30.0 (#91851)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
publish-kinds-next / config (push) Has been cancelled
publish-kinds-next / main (push) Has been cancelled
2024-08-13 14:01:48 -04:00
Matias Chomicki
699ff406c3 Logs panel: Enable displayedFields in dashboards and apps (#91810)
* LogsPanelCfg: add displayedFields

* LogsPanel: expose displayedFields

* Chore: add docs

* LogsPanel: add callbacks to external API

* LogsPanel: expose field callbacks and add default implementation

* chore: add unit test

* chore: unfocus test

* LogsPanel: add docs for new props

* Enable by default
2024-08-13 18:58:15 +03:00
Gilles De Mey
0a2db346ab Alerting: use new Alertmanager update hooks for mute and active time intervals (#91404) 2024-08-13 17:38:40 +02:00
Yuri Tseretyan
7b919e3277 Alerting: MuteTimeService to support TimeInterval and MuteTimeInterval fields in Alertmanager config (#91500)
* update notification policy provisioing to consider time intervals
* change names of intervals to be in order
2024-08-13 11:37:21 -04:00
Leonor Oliveira
d52d04b6d8 Revert "Use dw dynamic config" (#91846)
Revert "Use dw dynamic config (#91222)"

This reverts commit 0258842f87.
2024-08-13 17:24:26 +02:00
Mihai Doarna
b4db8bb967 LDAP: Remove omitempty flag from json annotation (#91843)
* remove omitempty flag from json annotation

* fix unit test
2024-08-13 18:17:52 +03:00
Brendan O'Handley
e0b8a00e78 Prometheus: Histogram table format should keep le values as strings (#91662)
* remove le value parsing as numbers

* add tests
2024-08-13 10:06:53 -05:00
Yuri Tseretyan
db33df5041 Alerting: Template API to return errutil errors (#91821) 2024-08-13 10:59:19 -04:00
Andres Martinez Gotor
9067797eb4 Feature: Allow to install plugins through configuration (#91790) 2024-08-13 16:57:55 +02:00
Kim Nylander
b03a709500 [DOC] Update Tempo and Pyroscope data source doc (#91704)
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-08-13 10:39:55 -04:00
Joey
d779dfb0a2 Tempo: Select performance improvements (#91732)
* Tempo select performance improvements

* Update type

* Tidy up and simplify

* Update tagValueOptions

* Update GroupBy options
2024-08-13 15:24:58 +01:00
Joey
d72846790e Tempo: Send the existing query with the request for a tags values (#90931)
* Send query with request

* Ensure number tag values are added to query correctly

* Update test

* Update test
2024-08-13 15:23:18 +01:00
Nathan Marrs
d817ee9b99 Docs: Add example to transpose transformation (#91823) 2024-08-13 10:22:56 -04:00
Bruno
90b44fdcbf Cloud migrations: GetSnapshotList only returns snapshots that belong to a session that exists (#91798)
* Cloud migrations: GetSnapshotList only returns snapshots that belong to a session that exists

* Cloud migrations: test GetSnapshotList

* add one more test case for GetSnapshotList

* fix test

* store encryption key for testing
2024-08-13 09:57:53 -03:00
Gilles De Mey
e9e5989549 Alerting: Introduce useProduceNewAlertmanagerConfiguration (#91623)
useProduceNewAlertmanagerConfiguration
2024-08-13 14:34:38 +02:00
Tom Ratcliffe
8136fbef1f Chore: Add capability for overriding local development behaviour using env vars (#85603) 2024-08-13 13:07:42 +01:00
Tom Ratcliffe
735954386f Alerting: Consolidate contact points dropdown and add filter in alert rules (#91690)
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>
Co-authored-by: Sonia Aguilar <soniaaguilarpeiron@gmail.com>
2024-08-13 12:56:13 +01:00
Alexander Akhmetov
149f02aebe Alerting: Add rule_group label to grafana_alerting_rule_group_rules metric (#88289)
* Alerting: Add rule_group label to grafana_alerting_rule_group_rules metric (#62361)

* Alerting: Delete rule group metrics when the rule group is deleted

This commit addresses the issue where the GroupRules metric (a GaugeVec)
keeps its value and is not deleted when an alert rule is removed from the rule registry.
Previously, when an alert rule with orgID=1 was active, the metric was:

  grafana_alerting_rule_group_rules{org="1",state="active"} 1

However, after deleting this rule, subsequent calls to updateRulesMetrics
did not update the gauge value, causing the metric to incorrectly remain at 1.

The fix ensures that when updateRulesMetrics is called it
also deletes the group rule metrics with the corresponding label values if needed.
2024-08-13 13:27:23 +02:00
antonio
71b56dbb95 alerting tutorial: improve visibility of part 2 (#91795)
* alerting tutorial: improve visibility of part 2

* changed wording

* Update docs/sources/tutorials/alerting-get-started/index.md

Co-authored-by: Jay Clifford <45856600+Jayclifford345@users.noreply.github.com>

* applied suggestions

* fixed admon

* all pretty no pity

---------

Co-authored-by: Jay Clifford <45856600+Jayclifford345@users.noreply.github.com>
2024-08-13 11:06:51 +00:00
Jeff Levin
8961f392f0 add team_member index on user_id org_id (#91819)
This pr adds a composite index on on the team_member table on user_id and org_id
2024-08-13 13:58:00 +03:00
Alexander Akhmetov
b2eeb0dd6e Alerting: update rule versions on folder move (#88376)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
* Alerting: update rule versions on folder move (#88361)
* Add tracing to folder.Move and folder.Update
2024-08-13 12:26:26 +02:00
Yulia Shanyrova
8044cb50f1 Plugins: Plugin details right panel is added. All the details were moved from thee top to the right panel (#90325)
* PluginDetailsRight panel is added. All the details were moved from the top to the right panel

* Add feature toggle pluginsDetailsRightPanel,Fix build, fix review comments

* Fix the typo

Co-authored-by: Giuseppe Guerra <giuseppe.guerra@grafana.com>

* hasAccessToExplore

* changes after review, add translations

* fix betterer

* fix betterer

* fix css error

* fix betterer

* fix translation labels, fix position of the right panel

* fix the build

* add condition to show updatedAt for plugin details

* add test to check 2 new fields at plugin details right panel;

* change the gap and remove report abuse button from core plugins

* add more tests

---------

Co-authored-by: Giuseppe Guerra <giuseppe.guerra@grafana.com>
2024-08-13 11:55:30 +02:00
David Harris
bac68069e0 chore: update issue template codeowners (#90925)
Adds myself as an additional codeowner for issue templates given the current reliance on ordering for links to request a new plugin from Grafana. 

This may be a temporary solution prior to being able to raise the requests natively within Grafana.
2024-08-13 09:57:51 +01:00
Ana Ivanov
8467838bef Navigation: Remove grafana-aws-app from Infrastructure navigation (#91524)
Remove grafana-aws-app from Infrastructure navigation
2024-08-13 11:54:30 +03:00
Karl Persson
8bcd9c2594 Identity: Remove typed id (#91801)
* Refactor identity struct to store type in separate field

* Update ResolveIdentity to take string representation of typedID

* Add IsIdentityType to requester interface

* Use IsIdentityType from interface

* Remove usage of TypedID

* Remote typedID struct

* fix GetInternalID
2024-08-13 10:18:28 +02:00
Leonor Oliveira
0258842f87 Use dw dynamic config (#91222)
* Remove kubernetesPlaylists feature_toggle

* Remove unified_storage_mode

* Remove double import

* Regenerate feature-toggles

* Read from config instead from feature_toggle

* cover scenario for when unified storage is not defined
2024-08-13 10:03:28 +02:00
Konrad Lalik
b67bcdb9b8 Alerting: Handle namespace and group query string params in Ruler API (#91533)
* Handle namespace and group query string params in Ruler API

* Use the new namespace and group query params when slashes in names

* Add validation, add group handling in GMA Api

* Move constants

* Use checkForPathSeparator function

* Fix linter issue
2024-08-13 08:31:07 +02:00
Sam Jewell
d54fdba322 Bump to go-duck v0.1.0 (#91794)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
* Bump to go-duck v0.1.0

This fixed ordering of the columns

**What is this feature, why do we need it?**

See https://github.com/scottlepp/go-duck/pull/14 for a description of the improvement we're including here

**Who is this feature for?**

Anyone who uses SQL Expressions. This is still an experimental feature, and only used by a very small number of instances.

* Run `make update-workspace`
2024-08-12 16:00:10 -04:00
owensmallwood
8fb334cf77 Unified Storage: Adds back readme to resource store (#91812)
adds back readme to resource store
2024-08-12 13:48:14 -06:00
Isabel Matwawana
5e638b4af0 Docs: add playlist management permissions (#91146)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Crowdin Upload Action / upload-sources-to-crowdin (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
2024-08-12 10:53:02 -04:00
Andres Martinez Gotor
d342e76f63 Chore: Add skeleton for background plugin installer (#91743) 2024-08-12 16:39:31 +02:00
Fayzal Ghantiwala
25dbb32cea Alerting: Vendor in latest grafana/alerting package (#91786)
* temp

* vendor

* Remove dead code

* Vendoring
2024-08-12 15:37:15 +01:00
Erik Sundell
2ed6ca360f Extensions: e2e test usePluginComponent hook (#91750)
* add simple test apps that use usePluginComponent hook and exposeComponent api

* add e2e test

* update readme

* Update README.md

* fix lint issue

* pr feedback
2024-08-12 15:43:42 +02:00
Joao Silva
b9cece8f9e Bookmarks: Create Bookmarks landing page (#91538) 2024-08-12 14:31:01 +01:00
Joey
d00b4879d2 Tempo: Simplify span filters logic and fix regex for tag only search (#90819)
Simplify span filters logic and fix regex for tag only search
2024-08-12 14:15:06 +01:00
Joey
379249fc60 Tempo: Tidy up and organise (#90649)
* Move test files to folder

* Update paths

* Tidy up
2024-08-12 14:12:22 +01:00
Domas
6dce2ecbde Sparkline: Support spanNulls graph config prop (#91797)
support spanNulls config prop for sparkline
2024-08-12 15:36:52 +03:00
Vijay Samuel
c9ddc688a2 Prometheus: Add support to make parallel queries (#90316)
* Add support for prometheus datasource to make parallel queries

* Incorporate review comments

* Update pkg/promlib/querydata/request.go

Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>

* Fix lint

* Add parallel queries behind feature flag

* Fixing lint issue

* Update go.mod

* Update pkg/promlib/querydata/request.go

* Update pkg/promlib/querydata/request.go

---------

Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>
Co-authored-by: Charandas <542168+charandas@users.noreply.github.com>
2024-08-12 14:31:39 +02:00
Ashley Harrison
369cd6f81e Chore: Migrate dashboard_grid styles to emotion (#91673)
migrate dashboard grid styles to emotion
2024-08-12 13:22:14 +01:00
grafana-pr-automation[bot]
32e4ea3b3c I18n: Download translations from Crowdin (#91796)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-08-12 15:21:20 +03:00
Ashley Harrison
dface46474 Chore: Migrate gf-form classes to emotion globals (#91632)
* migrate gf-form classes to emotion globals

* should be sm due to the different way the breakpoints work
2024-08-12 13:16:16 +01:00
Ashley Harrison
78f78753c7 Chore: Migrate Modal SCSS styles to emotion (#91569)
migrate modal scss styles to emotion
2024-08-12 12:55:22 +01:00
Gilles De Mey
add99fb3d0 Alerting: Add basic support for active_time_intervals (#91710) 2024-08-12 14:51:12 +03:00
Santiago
5487ea444a Alerting: Update remote Alertmanager config marshalling in test (#91791) 2024-08-12 13:45:22 +02:00
Gilles De Mey
f11d6ebcd0 Alerting: Update contact points list and mute timings list on update (#91776)
make sure that contact points list and mute timings list are updated when we update the alertmanager configuration
2024-08-12 13:37:17 +02:00
Bogdan Matei
3303900c09 Scopes: Lift scopes at global level (#90136) 2024-08-12 14:11:50 +03:00
Gilles De Mey
15f2b08f00 Alerting: Catch alert rule search exceptions (#91788)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
catch search exceptions and prevent from bubbling
2024-08-12 12:13:26 +02:00
Andreas Christou
82d051f336 AzureMonitor: Mark Azure Prometheus exemplars as public preview (#91674)
Mark Azure Prom exemplars as public preview
2024-08-12 11:11:45 +01:00
Ieva
6e7bc028d0 RBCA: Better separation between action set svc and store (#91491)
better separation between action set svc and store
2024-08-12 10:07:33 +01:00
Ieva
5bae9f11bc Docs: Add docs for bulk updating team members (#91499)
add docs for bulk updating team members
2024-08-12 09:58:55 +01:00
Ashley Harrison
ab3e8652aa Adhoc Filters: add new feature toggle for 'one of' operator (#91688)
add new feature toggle for 'one of'
2024-08-12 09:56:42 +01:00
Karl Persson
7f1ae1cd54 Identity: Update authlib to version that has correct commit to claims (#91784)
* Update authlib to version that has correct commit to claims
2024-08-12 09:39:48 +02:00
Ryan McKinley
e106df6d0b Auth: Update unified storage to depend on AuthInfo rather than Requester (#91783)
depend on authlib user info
2024-08-12 09:49:34 +03:00
Ryan McKinley
21d4a4f49e Auth: use IdentityType from authlib (#91763) 2024-08-12 09:26:53 +03:00
ismail simsek
faf7cb9312 Chore: Refactor explore metrics layout switcher and breakdown scene (#90944)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
* refactor breakdown scene

* refactor BreakdownScene along with LayoutSwitcher

* rename

* don't pass default layout

* better type handling

* betterer
2024-08-11 23:48:36 +02:00
ismail simsek
b8ebc5d463 Chore: Update lezer package of prometheus frontend (#91252)
* update lezer package

* Use UnquotedLabelMatcher instead of LabelMatcher

* Use UnquotedLabelMatcher instead of LabelMatcher in parsing.ts
2024-08-11 23:48:04 +02:00
Todd Treece
75f0b3a228 K8s: Test for changes to aggregator's postStartHooks (#91771)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
golangci-lint / lint-go (push) Has been cancelled
/ Alerting Swagger spec generation cron job (push) Has been cancelled
2024-08-10 20:32:57 -04:00
Jmdane
8bb548e17b Transformations: Add 'transpose' transform (#88963)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
publish-technical-documentation-next / sync (push) Has been cancelled
Trivy Scan / trivy-scan (push) Has been cancelled
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2024-08-10 02:57:26 +03:00
Taewoo K.
ec7a247674 feat: Add atlassian statuspage (#91769)
* add atlassian statuspage

* fix test
2024-08-10 01:48:31 +03:00
Todd Treece
5972dd0b59 Chore: Update names of DisabledPostStartHooks (#91767) 2024-08-09 16:57:08 -04:00
Mitch Seaman
8525943699 Docs: add Zoom to Reporting docs (#90219)
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
2024-08-09 16:28:39 -04:00
Todd Treece
30c3f5b66a Chore: Revert drone go workspace change to tests (#91762) 2024-08-09 21:03:26 +03:00
Andreas Christou
24c9aad5bb Bump grafana-azure-sdk-go and related dependencies (#91124)
* Bump Azure SDK and related dependencies

* Update go.mods

* update-workspace

* Update go files
2024-08-09 13:12:19 -04:00
Andreas Christou
ee18c64453 OpenTSDB: Fix test (#91761)
Some checks failed
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Fix test
2024-08-09 19:53:04 +03:00
Ryan McKinley
243c0935fc Auth: Use claims.AuthInfo in requester (#91739) 2024-08-09 19:46:56 +03:00
Andreas Christou
d52626be3f AzureMonitor: Add authproxy as supported user auth method (#91754)
Add authproxy as supported user auth method
2024-08-09 17:18:46 +01:00
Andreas Christou
06509712ec OpenTSDB: Fix data frame construction (#90991)
* Update type and frame construction

* Update tests

* Keep dataField name as value
2024-08-09 17:16:29 +01:00
Yuri Tseretyan
1108a00668 Alerting: Support for optimistic concurrency in priovisioning Tempate API (#91195)
* support optimistic concurrency in template service

* update request handler to get version from query parameter

* return not found if a new template is set with version

* update PUT api to set version

* update documentation + for mute timings

---------

Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
2024-08-09 11:40:07 -04:00
Isabel Matwawana
d20510a1db Docs: added pagination information for state timeline (#91749) 2024-08-09 11:32:16 -04:00
Agni Bhattacharyya
be32630de5 Auth: Skip email extraction when api url is not present (#91699)
* Auth: Skip email extraction when api url is not present

* fix lint: reduce cyclomatic complexity
2024-08-09 18:20:54 +03:00
Karl Persson
bcfb66b416 Identity: remove GetTypedID (#91745) 2024-08-09 18:20:24 +03:00
Todd Treece
6061fdc8b9 Chore: Fix requires_buildifier typo (#91747) 2024-08-09 11:00:05 -04:00
Michael Mandrus
eee3a75b8b CloudMigrations: Misc cleanup before codefreeze (#91725)
* fix retry logic

* slight adjustments

* fix disconnect and connect events

* Update pkg/services/cloudmigration/cloudmigrationimpl/snapshot_mgmt.go

Co-authored-by: Matheus Macabu <macabu@users.noreply.github.com>

---------

Co-authored-by: Matheus Macabu <macabu@users.noreply.github.com>
2024-08-09 17:38:08 +03:00
Todd Treece
13703de67e Chore: Update tests to use go-workspace script (#91746) 2024-08-09 10:25:27 -04:00
Todd Treece
27545e3da4 Chore: Use golanglint-ci-includes script in Makefile (#91742) 2024-08-09 10:05:02 -04:00
lean.dev
e20c7342a9 CloudMigration: Removes snapshot and resources when deleting a session (#91548) 2024-08-09 16:42:45 +03:00
Alexander Zobnin
1cc438a56c Zanzana: Evaluate dashboard and folder permissions (#91539)
* Zanzana: basic folder permissions checks

* Fix managed permissions for teams

* fix sync batch size

* add dashboards actions translations

* migrate folder tree

* migrate dashboard folders

* remove action sets from schema

* Adding more dashboard and folder-related permissions

* refactor

* Correctly translate dashboard permissions in folders

* fix dashboard parent permissions
2024-08-09 13:48:56 +02:00
Ivan Ortega Alba
423d198d77 Scenes: Upgrade to v5.7.4 (#91741) 2024-08-09 14:27:08 +03:00
grafana-pr-automation[bot]
0077dd09ae I18n: Download translations from Crowdin (#91737)
New Crowdin translations by GitHub Action

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-08-09 13:19:40 +03:00
Todd Treece
122e291134 Chore: Add dataplaneAggregator feature toggle (#91715)
Some checks failed
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
publish-technical-documentation-next / sync (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
publish-kinds-next / config (push) Has been cancelled
publish-kinds-next / main (push) Has been cancelled
2024-08-09 04:41:07 -04:00
Todd Treece
c5c206d8a6 Semconv: Add k8s.dataplaneservice.name (#91714) 2024-08-09 04:39:37 -04:00
Kevin Putera
01fc31069f StateTimeline: Add pagination support (#89586)
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2024-08-08 21:44:17 -05:00
Todd Treece
970a6e71ba Chore: Fix go workspace update script (#91720)
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
golangci-lint / lint-go (push) Waiting to run
Sync to mirror / trigger_downstream_patch_mirror (push) Waiting to run
Trivy Scan / trivy-scan (push) Waiting to run
2024-08-09 02:39:02 +03:00
Alexander Akhmetov
f4d2e064f4 Fix links to the What's new page in the PR template (#91672) 2024-08-08 23:32:37 +02:00
Todd Treece
7f155b2b6f Chore: Add go workspace scripts (#91707) 2024-08-08 16:51:17 -04:00
Kristin Laemmert
54177ca619 experiment: use read replica for Get and Find Dashboards (#91706) 2024-08-08 14:22:55 -04:00
Todd Treece
f463d622d0 Chore: Remove depguard rule skip in apiserver (#91705) 2024-08-08 21:11:13 +03:00
Kristin Laemmert
299c142f6a QuotaService: refactor to use ReplDB for Get queries (#91333)
* Feature (quota service): Use ReplDB for quota service Gets

This adds the replDB to the quota service, as well as some more test helper functions to simplify updating tests. My intent is that the helper functions can be removed when this is fully rolled out (or not) and we're consistently using the ReplDB interface (or not!)

* test updates
2024-08-08 13:41:33 -04:00
Nathan Marrs
787abccfbc Canvas: Fix selection box glitch when adding certain elements (#91654)
* fix selecto glitch when adding certain elements

* minor doc updates
2024-08-08 09:42:24 -07:00
3329 changed files with 142082 additions and 59125 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -7,9 +7,11 @@ import { glob } from 'glob';
// Why are we ignoring these?
// They're all deprecated/being removed so doesn't make sense to fix types
const eslintPathsToIgnore = [
'public/app/angular', // will be removed in Grafana 11
'public/app/plugins/panel/graph', // will be removed alongside angular
'public/app/plugins/panel/table-old', // will be removed alongside angular
'packages/grafana-ui/src/graveyard', // will be removed alongside angular in Grafana 12
'public/app/angular', // will be removed in Grafana 12
'public/app/plugins/panel/graph', // will be removed alongside angular in Grafana 12
'public/app/plugins/panel/table-old', // will be removed alongside angular in Grafana 12
'e2e/test-plugins',
];
// Avoid using functions that report the position of the issues, as this causes a lot of merge conflicts
@@ -20,10 +22,9 @@ export default {
.exclude(new RegExp(eslintPathsToIgnore.join('|'))),
'no undocumented stories': () => countUndocumentedStories().include('**/!(*.internal).story.tsx'),
'no gf-form usage': () =>
regexp(
/gf-form/gm,
'gf-form usage has been deprecated. Use a component from @grafana/ui or custom CSS instead.'
).include('**/*.{ts,tsx,html}'),
regexp(/gf-form/gm, 'gf-form usage has been deprecated. Use a component from @grafana/ui or custom CSS instead.')
.include('**/*.{ts,tsx,html}')
.exclude(new RegExp('packages/grafana-ui/src/themes/GlobalStyles')),
};
function countUndocumentedStories() {

View File

@@ -35,11 +35,11 @@ $(DRONE): $(BINGO_DIR)/drone.mod
@echo "(re)installing $(GOBIN)/drone-v1.5.0"
@cd $(BINGO_DIR) && GOWORK=off CGO_ENABLED=0 $(GO) build -mod=mod -modfile=drone.mod -o=$(GOBIN)/drone-v1.5.0 "github.com/drone/drone-cli/drone"
GOLANGCI_LINT := $(GOBIN)/golangci-lint-v1.59.1
GOLANGCI_LINT := $(GOBIN)/golangci-lint-v1.60.1
$(GOLANGCI_LINT): $(BINGO_DIR)/golangci-lint.mod
@# Install binary/ries using Go 1.14+ build command. This is using bwplotka/bingo-controlled, separate go module with pinned dependencies.
@echo "(re)installing $(GOBIN)/golangci-lint-v1.59.1"
@cd $(BINGO_DIR) && GOWORK=off $(GO) build -mod=mod -modfile=golangci-lint.mod -o=$(GOBIN)/golangci-lint-v1.59.1 "github.com/golangci/golangci-lint/cmd/golangci-lint"
@echo "(re)installing $(GOBIN)/golangci-lint-v1.60.1"
@cd $(BINGO_DIR) && GOWORK=off $(GO) build -mod=mod -modfile=golangci-lint.mod -o=$(GOBIN)/golangci-lint-v1.60.1 "github.com/golangci/golangci-lint/cmd/golangci-lint"
JB := $(GOBIN)/jb-v0.5.1
$(JB): $(BINGO_DIR)/jb.mod

View File

@@ -1,7 +1,7 @@
module _ // Auto generated by https://github.com/bwplotka/bingo. DO NOT EDIT
go 1.22
go 1.22.1
toolchain go1.22.4
toolchain go1.23.0
require github.com/golangci/golangci-lint v1.59.1 // cmd/golangci-lint
require github.com/golangci/golangci-lint v1.60.1 // cmd/golangci-lint

View File

@@ -55,18 +55,26 @@ github.com/Antonboom/testifylint v1.3.0 h1:UiqrddKs1W3YK8R0TUuWwrVKlVAnS07DTUVWW
github.com/Antonboom/testifylint v1.3.0/go.mod h1:NV0hTlteCkViPW9mSR4wEMfwp+Hs1T3dY60bkvSfhpM=
github.com/Antonboom/testifylint v1.3.1 h1:Uam4q1Q+2b6H7gvk9RQFw6jyVDdpzIirFOOrbs14eG4=
github.com/Antonboom/testifylint v1.3.1/go.mod h1:NV0hTlteCkViPW9mSR4wEMfwp+Hs1T3dY60bkvSfhpM=
github.com/Antonboom/testifylint v1.4.3 h1:ohMt6AHuHgttaQ1xb6SSnxCeK4/rnK7KKzbvs7DmEck=
github.com/Antonboom/testifylint v1.4.3/go.mod h1:+8Q9+AOLsz5ZiQiiYujJKs9mNz398+M6UgslP4qgJLA=
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
github.com/BurntSushi/toml v1.3.2 h1:o7IhLm0Msx3BaB+n3Ag7L8EVlByGnpq14C4YWiu/gL8=
github.com/BurntSushi/toml v1.3.2/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ=
github.com/BurntSushi/toml v1.4.0 h1:kuoIxZQy2WRRk1pttg9asf+WVv6tWQuBNVmK8+nqPr0=
github.com/BurntSushi/toml v1.4.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho=
github.com/BurntSushi/toml v1.4.1-0.20240526193622-a339e1f7089c h1:pxW6RcqyfI9/kWtOwnv/G+AzdKuy2ZrqINhenH4HyNs=
github.com/BurntSushi/toml v1.4.1-0.20240526193622-a339e1f7089c/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho=
github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo=
github.com/Crocmagnon/fatcontext v0.2.2 h1:OrFlsDdOj9hW/oBEJBNSuH7QWf+E9WPVHw+x52bXVbk=
github.com/Crocmagnon/fatcontext v0.2.2/go.mod h1:WSn/c/+MMNiD8Pri0ahRj0o9jVpeowzavOQplBJw6u0=
github.com/Crocmagnon/fatcontext v0.4.0 h1:4ykozu23YHA0JB6+thiuEv7iT6xq995qS1vcuWZq0tg=
github.com/Crocmagnon/fatcontext v0.4.0/go.mod h1:ZtWrXkgyfsYPzS6K3O88va6t2GEglG93vnII/F94WC0=
github.com/Djarvur/go-err113 v0.0.0-20210108212216-aea10b59be24 h1:sHglBQTwgx+rWPdisA5ynNEsoARbiCBOyGcJM4/OzsM=
github.com/Djarvur/go-err113 v0.0.0-20210108212216-aea10b59be24/go.mod h1:4UJr5HIiMZrwgkSPdsjy2uOQExX/WEILpIrO9UPGuXs=
github.com/GaijinEntertainment/go-exhaustruct/v3 v3.2.0 h1:sATXp1x6/axKxz2Gjxv8MALP0bXaNRfQinEwyfMcx8c=
github.com/GaijinEntertainment/go-exhaustruct/v3 v3.2.0/go.mod h1:Nl76DrGNJTA1KJ0LePKBw/vznBX1EHbAZX8mwjR82nI=
github.com/GaijinEntertainment/go-exhaustruct/v3 v3.3.0 h1:/fTUt5vmbkAcMBt4YQiuC23cV0kEsN1MVMNqeOW43cU=
github.com/GaijinEntertainment/go-exhaustruct/v3 v3.3.0/go.mod h1:ONJg5sxcbsdQQ4pOW8TGdTidT2TMAUy/2Xhr8mrYaao=
github.com/Masterminds/semver v1.5.0 h1:H65muMkzWKEuNDnfl9d70GUjFniHKHRbFPGBuZ3QEww=
github.com/Masterminds/semver v1.5.0/go.mod h1:MB6lktGJrhw8PrUyiEoblNEGEQ+RzHPF078ddwwvV3Y=
github.com/Masterminds/semver/v3 v3.2.1 h1:RN9w6+7QoMeJVGyfmbcgs28Br8cvmnucEXnY0rYXWg0=
@@ -100,6 +108,8 @@ github.com/blizzy78/varnamelen v0.8.0 h1:oqSblyuQvFsW1hbBHh1zfwrKe3kcSj0rnXkKzsQ
github.com/blizzy78/varnamelen v0.8.0/go.mod h1:V9TzQZ4fLJ1DSrjVDfl89H7aMnTvKkApdHeyESmyR7k=
github.com/bombsimon/wsl/v4 v4.2.1 h1:Cxg6u+XDWff75SIFFmNsqnIOgob+Q9hG6y/ioKbRFiM=
github.com/bombsimon/wsl/v4 v4.2.1/go.mod h1:Xu/kDxGZTofQcDGCtQe9KCzhHphIe0fDuyWTxER9Feo=
github.com/bombsimon/wsl/v4 v4.4.1 h1:jfUaCkN+aUpobrMO24zwyAMwMAV5eSziCkOKEauOLdw=
github.com/bombsimon/wsl/v4 v4.4.1/go.mod h1:Xu/kDxGZTofQcDGCtQe9KCzhHphIe0fDuyWTxER9Feo=
github.com/breml/bidichk v0.2.7 h1:dAkKQPLl/Qrk7hnP6P+E0xOodrq8Us7+U0o4UBOAlQY=
github.com/breml/bidichk v0.2.7/go.mod h1:YodjipAGI9fGcYM7II6wFvGhdMYsC5pHDlGzqvEW3tQ=
github.com/breml/errchkjson v0.3.6 h1:VLhVkqSBH96AvXEyclMR37rZslRrY2kcyq+31HCsVrA=
@@ -132,6 +142,7 @@ github.com/ckaznocha/intrange v0.1.2/go.mod h1:RWffCw/vKBwHeOEwWdCikAtY0q4gGt8Vh
github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw=
github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc=
github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o=
github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o=
github.com/curioswitch/go-reassign v0.2.0 h1:G9UZyOcpk/d7Gd6mqYgd8XYWFMw/znxwGDUstnC9DIo=
github.com/curioswitch/go-reassign v0.2.0/go.mod h1:x6OpXuWvgfQaMGks2BZybTngWjT84hqJfKoO8Tt/Roc=
github.com/daixiang0/gci v0.12.3 h1:yOZI7VAxAGPQmkb1eqt5g/11SUlwoat1fSblGLmdiQc=
@@ -208,6 +219,8 @@ github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y=
github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8=
github.com/gofrs/flock v0.8.1 h1:+gYjHKf32LDeiEEFhQaotPbLuUXjY5ZqxKgXy7n59aw=
github.com/gofrs/flock v0.8.1/go.mod h1:F1TvTiK9OcQqauNUHlbJvyl9Qa1QvF/gOUDKA14jxHU=
github.com/gofrs/flock v0.12.1 h1:MTLVXXHf8ekldpJk3AKicLij9MdwOWkZ+a/jHHZby9E=
github.com/gofrs/flock v0.12.1/go.mod h1:9zxTsyu5xtJ9DK+1tFZyibEV7y3uwDxPPfbxeeHCoD0=
github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ=
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q=
github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
@@ -248,6 +261,8 @@ github.com/golangci/golangci-lint v1.59.0 h1:st69YDnAH/v2QXDcgUaZ0seQajHScPALBVk
github.com/golangci/golangci-lint v1.59.0/go.mod h1:QNA32UWdUdHXnu+Ap5/ZU4WVwyp2tL94UxEXrSErjg0=
github.com/golangci/golangci-lint v1.59.1 h1:CRRLu1JbhK5avLABFJ/OHVSQ0Ie5c4ulsOId1h3TTks=
github.com/golangci/golangci-lint v1.59.1/go.mod h1:jX5Oif4C7P0j9++YB2MMJmoNrb01NJ8ITqKWNLewThg=
github.com/golangci/golangci-lint v1.60.1 h1:DRKNqNTQRLBJZ1il5u4fvgLQCjQc7QFs0DbhksJtVJE=
github.com/golangci/golangci-lint v1.60.1/go.mod h1:jDIPN1rYaIA+ijp9OZcUmUCoQOtZ76pOlFbi15FlLJY=
github.com/golangci/misspell v0.4.1 h1:+y73iSicVy2PqyX7kmUefHusENlrP9YwuHZHPLGQj/g=
github.com/golangci/misspell v0.4.1/go.mod h1:9mAN1quEo3DlpbaIKKyEvRxK1pwqR9s/Sea1bJCtlNI=
github.com/golangci/misspell v0.5.1 h1:/SjR1clj5uDjNLwYzCahHwIOPmQgoH04AyQIiWGbhCM=
@@ -331,6 +346,8 @@ github.com/jjti/go-spancheck v0.5.3 h1:vfq4s2IB8T3HvbpiwDTYgVPj1Ze/ZSXrTtaZRTc7C
github.com/jjti/go-spancheck v0.5.3/go.mod h1:eQdOX1k3T+nAKvZDyLC3Eby0La4dZ+I19iOl5NzSPFE=
github.com/jjti/go-spancheck v0.6.1 h1:ZK/wE5Kyi1VX3PJpUO2oEgeoI4FWOUm7Shb2Gbv5obI=
github.com/jjti/go-spancheck v0.6.1/go.mod h1:vF1QkOO159prdo6mHRxak2CpzDpHAfKiPUDP/NeRnX8=
github.com/jjti/go-spancheck v0.6.2 h1:iYtoxqPMzHUPp7St+5yA8+cONdyXD3ug6KK15n7Pklk=
github.com/jjti/go-spancheck v0.6.2/go.mod h1:+X7lvIrR5ZdUTkxFYqzJ0abr8Sb5LOo80uOhWNqIrYA=
github.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4=
github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU=
github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4=
@@ -401,6 +418,8 @@ github.com/matttproud/golang_protobuf_extensions v1.0.1 h1:4hp9jkHxhMHkqkrB3Ix0j
github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0=
github.com/mgechev/revive v1.3.7 h1:502QY0vQGe9KtYJ9FpxMz9rL+Fc/P13CI5POL4uHCcE=
github.com/mgechev/revive v1.3.7/go.mod h1:RJ16jUbF0OWC3co/+XTxmFNgEpUPwnnA0BRllX2aDNA=
github.com/mgechev/revive v1.3.9 h1:18Y3R4a2USSBF+QZKFQwVkBROUda7uoBlkEuBD+YD1A=
github.com/mgechev/revive v1.3.9/go.mod h1:+uxEIr5UH0TjXWHTno3xh4u7eg6jDpXKzQccA9UGhHU=
github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y=
github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0=
github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY=
@@ -412,6 +431,8 @@ github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3Rllmb
github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
github.com/moricho/tparallel v0.3.1 h1:fQKD4U1wRMAYNngDonW5XupoB/ZGJHdpzrWqgyg9krA=
github.com/moricho/tparallel v0.3.1/go.mod h1:leENX2cUv7Sv2qDgdi0D0fCftN8fRC67Bcn8pqzeYNI=
github.com/moricho/tparallel v0.3.2 h1:odr8aZVFA3NZrNybggMkYO3rgPRcqjeQUlBBFVxKHTI=
github.com/moricho/tparallel v0.3.2/go.mod h1:OQ+K3b4Ln3l2TZveGCywybl68glfLEwFGqvnjok8b+U=
github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U=
github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U=
github.com/nakabonne/nestif v0.3.1 h1:wm28nZjhQY5HyYPx+weN3Q65k6ilSBxDb8v5S81B81U=
@@ -448,6 +469,8 @@ github.com/polyfloyd/go-errorlint v1.5.1 h1:5gHxDjLyyWij7fhfrjYNNlHsUNQeyx0LFQKU
github.com/polyfloyd/go-errorlint v1.5.1/go.mod h1:sH1QC1pxxi0fFecsVIzBmxtrgd9IF/SkJpA6wqyKAJs=
github.com/polyfloyd/go-errorlint v1.5.2 h1:SJhVik3Umsjh7mte1vE0fVZ5T1gznasQG3PV7U5xFdA=
github.com/polyfloyd/go-errorlint v1.5.2/go.mod h1:sH1QC1pxxi0fFecsVIzBmxtrgd9IF/SkJpA6wqyKAJs=
github.com/polyfloyd/go-errorlint v1.6.0 h1:tftWV9DE7txiFzPpztTAwyoRLKNj9gpVm2cg8/OwcYY=
github.com/polyfloyd/go-errorlint v1.6.0/go.mod h1:HR7u8wuP1kb1NeN1zqTd1ZMlqUKPPHF+Id4vIPvDqVw=
github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw=
github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo=
github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M=
@@ -486,6 +509,8 @@ github.com/ryancurrah/gomodguard v1.3.1 h1:fH+fUg+ngsQO0ruZXXHnA/2aNllWA1whly4a6
github.com/ryancurrah/gomodguard v1.3.1/go.mod h1:DGFHzEhi6iJ0oIDfMuo3TgrS+L9gZvrEfmjjuelnRU0=
github.com/ryancurrah/gomodguard v1.3.2 h1:CuG27ulzEB1Gu5Dk5gP8PFxSOZ3ptSdP5iI/3IXxM18=
github.com/ryancurrah/gomodguard v1.3.2/go.mod h1:LqdemiFomEjcxOqirbQCb3JFvSxH2JUYMerTFd3sF2o=
github.com/ryancurrah/gomodguard v1.3.3 h1:eiSQdJVNr9KTNxY2Niij8UReSwR8Xrte3exBrAZfqpg=
github.com/ryancurrah/gomodguard v1.3.3/go.mod h1:rsKQjj4l3LXe8N344Ow7agAy5p9yjsWOtRzUMYmA0QY=
github.com/ryanrolds/sqlclosecheck v0.5.1 h1:dibWW826u0P8jNLsLN+En7+RqWWTYrjCB9fJfSfdyCU=
github.com/ryanrolds/sqlclosecheck v0.5.1/go.mod h1:2g3dUjoS6AL4huFdv6wn55WpLIDjY7ZgUR4J8HOO/XQ=
github.com/sanposhiho/wastedassign/v2 v2.0.7 h1:J+6nrY4VW+gC9xFzUc+XjPD3g3wF3je/NsJFwFK7Uxc=
@@ -498,6 +523,8 @@ github.com/sashamelentyev/usestdlibvars v1.25.0 h1:IK8SI2QyFzy/2OD2PYnhy84dpfNo9
github.com/sashamelentyev/usestdlibvars v1.25.0/go.mod h1:9nl0jgOfHKWNFS43Ojw0i7aRoS4j6EBye3YBhmAIRF8=
github.com/sashamelentyev/usestdlibvars v1.26.0 h1:LONR2hNVKxRmzIrZR0PhSF3mhCAzvnr+DcUiHgREfXE=
github.com/sashamelentyev/usestdlibvars v1.26.0/go.mod h1:9nl0jgOfHKWNFS43Ojw0i7aRoS4j6EBye3YBhmAIRF8=
github.com/sashamelentyev/usestdlibvars v1.27.0 h1:t/3jZpSXtRPRf2xr0m63i32ZrusyurIGT9E5wAvXQnI=
github.com/sashamelentyev/usestdlibvars v1.27.0/go.mod h1:9nl0jgOfHKWNFS43Ojw0i7aRoS4j6EBye3YBhmAIRF8=
github.com/securego/gosec/v2 v2.19.0 h1:gl5xMkOI0/E6Hxx0XCY2XujA3V7SNSefA8sC+3f1gnk=
github.com/securego/gosec/v2 v2.19.0/go.mod h1:hOkDcHz9J/XIgIlPDXalxjeVYsHxoWUc5zJSHxcB8YM=
github.com/securego/gosec/v2 v2.20.1-0.20240525090044-5f0084eb01a9 h1:rnO6Zp1YMQwv8AyxzuwsVohljJgp4L0ZqiCgtACsPsc=
@@ -515,6 +542,8 @@ github.com/sivchari/containedctx v1.0.3 h1:x+etemjbsh2fB5ewm5FeLNi5bUjK0V8n0RB+W
github.com/sivchari/containedctx v1.0.3/go.mod h1:c1RDvCbnJLtH4lLcYD/GqwiBSSf4F5Qk0xld2rBqzJ4=
github.com/sivchari/tenv v1.7.1 h1:PSpuD4bu6fSmtWMxSGWcvqUUgIn7k3yOJhOIzVWn8Ak=
github.com/sivchari/tenv v1.7.1/go.mod h1:64yStXKSOxDfX47NlhVwND4dHwfZDdbp2Lyl018Icvg=
github.com/sivchari/tenv v1.10.0 h1:g/hzMA+dBCKqGXgW8AV/1xIWhAvDrx0zFKNR48NFMg0=
github.com/sivchari/tenv v1.10.0/go.mod h1:tdY24masnVoZFxYrHv/nD6Tc8FbkEtAQEEziXpyMgqY=
github.com/sonatard/noctx v0.0.2 h1:L7Dz4De2zDQhW8S0t+KUjY0MAQJd6SgVwhzNIc4ok00=
github.com/sonatard/noctx v0.0.2/go.mod h1:kzFz+CzWSjQ2OzIm46uJZoXuBpa2+0y3T36U18dWqIo=
github.com/sourcegraph/go-diff v0.7.0 h1:9uLlrd5T46OXs5qpp8L/MTltk0zikUGi0sNNyCpA8G0=
@@ -525,6 +554,8 @@ github.com/spf13/cast v1.5.0 h1:rj3WzYc11XZaIZMPKmwP96zkFEnnAmV8s6XbB2aY32w=
github.com/spf13/cast v1.5.0/go.mod h1:SpXXQ5YoyJw6s3/6cMTQuxvgRl3PCJiyaX9p6b155UU=
github.com/spf13/cobra v1.7.0 h1:hyqWnYt1ZQShIddO5kBpj3vu05/++x6tJ6dg8EC572I=
github.com/spf13/cobra v1.7.0/go.mod h1:uLxZILRyS/50WlhOIKD7W6V5bgeIt+4sICxh6uRMrb0=
github.com/spf13/cobra v1.8.1 h1:e5/vxKd/rZsfSJMUX1agtjeTDf+qv1/JdBF8gg5k9ZM=
github.com/spf13/cobra v1.8.1/go.mod h1:wHxEcudfqmLYa8iTfL+OuZPbBZkmvliBWKIezN3kD9Y=
github.com/spf13/jwalterweatherman v1.1.0 h1:ue6voC5bR5F8YxI5S67j9i582FU4Qvo2bmqnqMYADFk=
github.com/spf13/jwalterweatherman v1.1.0/go.mod h1:aNWZUN0dPAAO/Ljvb5BEdw96iTZ0EXowPYD95IqWIGo=
github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA=
@@ -577,6 +608,8 @@ github.com/ultraware/whitespace v0.1.1 h1:bTPOGejYFulW3PkcrqkeQwOd6NKOOXvmGD9bo/
github.com/ultraware/whitespace v0.1.1/go.mod h1:XcP1RLD81eV4BW8UhQlpaR+SDc2givTvyI8a586WjW8=
github.com/uudashr/gocognit v1.1.2 h1:l6BAEKJqQH2UpKAPKdMfZf5kE4W/2xk8pfU1OVLvniI=
github.com/uudashr/gocognit v1.1.2/go.mod h1:aAVdLURqcanke8h3vg35BC++eseDm66Z7KmchI5et4k=
github.com/uudashr/gocognit v1.1.3 h1:l+a111VcDbKfynh+airAy/DJQKaXh2m9vkoysMPSZyM=
github.com/uudashr/gocognit v1.1.3/go.mod h1:aKH8/e8xbTRBwjbCkwZ8qt4l2EpKXl31KMHgSS+lZ2U=
github.com/xen0n/gosmopolitan v1.2.2 h1:/p2KTnMzwRexIW8GlKawsTWOxn7UHA+jCMF/V8HHtvU=
github.com/xen0n/gosmopolitan v1.2.2/go.mod h1:7XX7Mj61uLYrj0qmeN0zi7XDon9JRAEhYQqAPLVNTeg=
github.com/yagipy/maintidx v1.0.0 h1:h5NvIsCz+nRDapQ0exNv4aJ0yXSI0420omVANTv3GJM=
@@ -608,6 +641,8 @@ go-simpler.org/sloglint v0.7.0 h1:rMZRxD9MbaGoRFobIOicMxZzum7AXNFDlez6xxJs5V4=
go-simpler.org/sloglint v0.7.0/go.mod h1:g9SXiSWY0JJh4LS39/Q0GxzP/QX2cVcbTOYhDpXrJEs=
go-simpler.org/sloglint v0.7.1 h1:qlGLiqHbN5islOxjeLXoPtUdZXb669RW+BDQ+xOSNoU=
go-simpler.org/sloglint v0.7.1/go.mod h1:OlaVDRh/FKKd4X4sIMbsz8st97vomydceL146Fthh/c=
go-simpler.org/sloglint v0.7.2 h1:Wc9Em/Zeuu7JYpl+oKoYOsQSy2X560aVueCW/m6IijY=
go-simpler.org/sloglint v0.7.2/go.mod h1:US+9C80ppl7VsThQclkM7BkCHQAzuz8kHLsW3ppuluo=
go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU=
go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8=
go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw=
@@ -679,6 +714,8 @@ golang.org/x/mod v0.17.0 h1:zY54UmvipHiNd+pm+m0x9KhZ9hl1/7QNMyxXbc6ICqA=
golang.org/x/mod v0.17.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
golang.org/x/mod v0.18.0 h1:5+9lSbEzPSdWkH32vYPBwEpX8KwDbM52Ud9xBUvNlb0=
golang.org/x/mod v0.18.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
golang.org/x/mod v0.20.0 h1:utOm6MM3R3dnawAiJgn0y+xvuYRsm1RKM/4giyfDgV0=
golang.org/x/mod v0.20.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
@@ -740,6 +777,8 @@ golang.org/x/sync v0.6.0 h1:5BMeUDZ7vkXGfEr1x9B4bRcTH4lpkTkpdh0T/J+qjbQ=
golang.org/x/sync v0.6.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M=
golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ=
golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
@@ -800,6 +839,8 @@ golang.org/x/sys v0.20.0 h1:Od9JTbYCk261bKm4M/mw7AklTlFYIa0bIp9BgSm1S8Y=
golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.21.0 h1:rF+pYz3DAGSQAxAu1CbC7catZg4ebC4UIeIhKxBZvws=
golang.org/x/sys v0.21.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.23.0 h1:YfKFowiIMvtgl1UERQoTPPToxltDeZfbj4H7dVUCwmM=
golang.org/x/sys v0.23.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
golang.org/x/term v0.1.0/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
@@ -890,6 +931,8 @@ golang.org/x/tools v0.21.0 h1:qc0xYgIbsSDt9EyWz05J5wfa7LOVW0YTLOXrqdLAWIw=
golang.org/x/tools v0.21.0/go.mod h1:aiJjzUbINMkxbQROHiO6hDPo2LHcIPhhQsa9DLh0yGk=
golang.org/x/tools v0.22.0 h1:gqSGLZqv+AI9lIQzniJ0nZDRG5GBPsSi+DRNHWNz6yA=
golang.org/x/tools v0.22.0/go.mod h1:aCwcsjqvq7Yqt6TNyX7QMU2enbQ/Gt0bo6krSeEri+c=
golang.org/x/tools v0.24.0 h1:J1shsA93PJUEVaUSaay7UXAyE8aimq3GW0pjlolpa24=
golang.org/x/tools v0.24.0/go.mod h1:YhNqVBIfWHdzvTLs0d8LCuMhkKUgSUKldakyV7W/WDQ=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
@@ -997,6 +1040,8 @@ honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9
honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k=
honnef.co/go/tools v0.4.7 h1:9MDAWxMoSnB6QoSqiVr7P5mtkT9pOc1kSxchzPCnqJs=
honnef.co/go/tools v0.4.7/go.mod h1:+rnGS1THNh8zMwnd2oVOTL9QF6vmfyG6ZXBULae2uc0=
honnef.co/go/tools v0.5.0 h1:29uoiIormS3Z6R+t56STz/oI4v+mB51TSmEOdJPgRnE=
honnef.co/go/tools v0.5.0/go.mod h1:e9irvo83WDG9/irijV44wr3tbhcFeRnfpVlRqVwpzMs=
mvdan.cc/gofumpt v0.6.0 h1:G3QvahNDmpD+Aek/bNOLrFR2XC6ZAdo62dZu65gmwGo=
mvdan.cc/gofumpt v0.6.0/go.mod h1:4L0wf+kgIPZtcCWXynNS2e6bhmj73umwnuXSZarixzA=
mvdan.cc/unparam v0.0.0-20240104100049-c549a3470d14 h1:zCr3iRRgdk5eIikZNDphGcM6KGVTx3Yu+/Uu9Es254w=

View File

@@ -14,7 +14,7 @@ CUE="${GOBIN}/cue-v0.5.0"
DRONE="${GOBIN}/drone-v1.5.0"
GOLANGCI_LINT="${GOBIN}/golangci-lint-v1.59.1"
GOLANGCI_LINT="${GOBIN}/golangci-lint-v1.60.1"
JB="${GOBIN}/jb-v0.5.1"

View File

@@ -2,7 +2,7 @@
init_cmds = [
["GO_BUILD_DEV=1", "make", "build-go"],
["make", "gen-jsonnet"],
["./bin/grafana", "server", "-profile", "-profile-addr=0.0.0.0", "-profile-port=6000", "-profile-block-rate=1", "-profile-mutex-rate=5", "-packaging=dev", "cfg:app_mode=development"]
["./bin/grafana", "server", "-profile", "-profile-addr=127.0.0.1", "-profile-port=6000", "-profile-block-rate=1", "-profile-mutex-rate=5", "-packaging=dev", "cfg:app_mode=development"]
]
watch_all = true
follow_symlinks = true
@@ -18,5 +18,5 @@ build_delay = 1500
cmds = [
["GO_BUILD_DEV=1", "make", "build-go"],
["make", "gen-jsonnet"],
["./bin/grafana", "server", "-profile", "-profile-addr=0.0.0.0", "-profile-port=6000", "-profile-block-rate=1", "-profile-mutex-rate=5", "-packaging=dev", "cfg:app_mode=development"]
["./bin/grafana", "server", "-profile", "-profile-addr=127.0.0.1", "-profile-port=6000", "-profile-block-rate=1", "-profile-mutex-rate=5", "-packaging=dev", "cfg:app_mode=development"]
]

File diff suppressed because it is too large Load Diff

View File

@@ -13,7 +13,7 @@ node_modules
/public/lib/monaco
/scripts/grafana-server/tmp
vendor
e2e/custom-plugins
e2e/test-plugins
playwright-report
# TS generate from cue by cuetsy

43
.github/CODEOWNERS vendored
View File

@@ -36,7 +36,7 @@
/docs/ @grafana/docs-tooling
/docs/.codespellignore @grafana/docs-tooling
/docs/sources/ @Eve832
/docs/sources/ @irenerl24
/docs/sources/alerting/ @brendamuir
/docs/sources/dashboards/ @imatwawana
@@ -67,12 +67,23 @@
/hack/ @grafana/grafana-app-platform-squad
/apps/alerting/ @grafana/alerting-backend
/apps/playlist/ @grafana/grafana-app-platform-squad
/pkg/api/ @grafana/grafana-backend-group
/pkg/apis/ @grafana/grafana-app-platform-squad
/pkg/apis/alerting_notifications @grafana/grafana-app-platform-squad @grafana/alerting-backend @grafana/alerting-frontend
/pkg/apis/query @grafana/grafana-datasources-core-services
/pkg/bus/ @grafana/grafana-search-and-storage
/pkg/cmd/ @grafana/grafana-backend-group
/pkg/cmd/grafana/apiserver @grafana/grafana-app-platform-squad
/pkg/cmd/grafana-cli/commands/install_command.go @grafana/plugins-platform-backend
/pkg/cmd/grafana-cli/commands/install_command_test.go @grafana/plugins-platform-backend
/pkg/cmd/grafana-cli/commands/listremote_command.go @grafana/plugins-platform-backend
/pkg/cmd/grafana-cli/commands/listversions_command.go @grafana/plugins-platform-backend
/pkg/cmd/grafana-cli/commands/ls_command_test.go @grafana/plugins-platform-backend
/pkg/cmd/grafana-cli/commands/ls_command.go @grafana/plugins-platform-backend
/pkg/cmd/grafana-cli/commands/remove_command.go @grafana/plugins-platform-backend
/pkg/cmd/grafana-cli/commands/upgrade_command.go @grafana/plugins-platform-backend
/pkg/cmd/grafana-cli/commands/upgrade_all_command.go @grafana/plugins-platform-backend
/pkg/cmd/grafana-cli/commands/upgrade_all_command_test.go @grafana/plugins-platform-backend
/pkg/components/apikeygen/ @grafana/identity-squad
/pkg/components/satokengen/ @grafana/identity-squad
/pkg/components/dashdiffs/ @grafana/grafana-app-platform-squad
@@ -100,6 +111,7 @@
/pkg/semconv/ @grafana/grafana-backend-group
/pkg/server/ @grafana/grafana-backend-group
/pkg/apiserver @grafana/grafana-app-platform-squad
/pkg/aggregator @grafana/grafana-app-platform-squad
/pkg/apimachinery @grafana/grafana-app-platform-squad
/pkg/apimachinery/identity/ @grafana/identity-squad
/pkg/apimachinery/errutil/ @grafana/grafana-backend-group
@@ -108,7 +120,7 @@
/pkg/services/annotations/ @grafana/grafana-search-and-storage
/pkg/services/apikey/ @grafana/identity-squad
/pkg/services/cleanup/ @grafana/grafana-backend-group
/pkg/services/contexthandler/ @grafana/grafana-backend-group
/pkg/services/contexthandler/ @grafana/grafana-backend-group @grafana/grafana-app-platform-squad
/pkg/services/correlations/ @grafana/explore-squad
/pkg/services/dashboardimport/ @grafana/grafana-backend-group
/pkg/services/dashboards/ @grafana/grafana-app-platform-squad
@@ -125,6 +137,7 @@
/pkg/services/playlist/ @grafana/grafana-app-platform-squad
/pkg/services/preference/ @grafana/grafana-backend-group
/pkg/services/provisioning/ @grafana/grafana-search-and-storage
/pkg/services/provisioning/alerting/ @grafana/alerting-backend
/pkg/services/query/ @grafana/grafana-app-platform-squad
/pkg/services/queryhistory/ @grafana/explore-squad
/pkg/services/quota/ @grafana/grafana-search-and-storage
@@ -189,6 +202,7 @@
/devenv/docker/blocks/mariadb/ @grafana/oss-big-tent
/devenv/docker/blocks/memcached/ @grafana/grafana-backend-group
/devenv/docker/blocks/mimir_backend/ @grafana/alerting-backend
/devenv/docker/blocks/mqtt/ @grafana/alerting-backend
/devenv/docker/blocks/mssql/ @grafana/partner-datasources
/devenv/docker/blocks/mssql_arm64/ @grafana/partner-datasources
/devenv/docker/blocks/mssql_tests/ @grafana/partner-datasources
@@ -202,6 +216,7 @@
/devenv/docker/blocks/postgres_tests/ @grafana/oss-big-tent
/devenv/docker/blocks/prometheus/ @grafana/observability-metrics
/devenv/docker/blocks/prometheus_random_data/ @grafana/observability-metrics
/devenv/docker/blocks/prometheus_high_card/ @grafana/observability-metrics
/devenv/docker/blocks/pyroscope/ @grafana/observability-traces-and-profiling
/devenv/docker/blocks/redis/ @bergquist
/devenv/docker/blocks/sensugo/ @grafana/grafana-backend-group
@@ -277,6 +292,7 @@
/pkg/modules/ @grafana/grafana-app-platform-squad
/pkg/services/grpcserver/ @grafana/grafana-search-and-storage
/pkg/generated @grafana/grafana-app-platform-squad
/pkg/services/unifiedSearch/ @grafana/grafana-search-and-storage
# Alerting
/pkg/services/ngalert/ @grafana/alerting-backend
@@ -312,6 +328,7 @@
/e2e/ @grafana/grafana-frontend-platform
/e2e/cloud-plugins-suite/ @grafana/partner-datasources
/e2e/plugin-e2e/plugin-e2e-api-tests/ @grafana/plugins-platform-frontend
/e2e/test-plugins/grafana-extensionstest-app/ @grafana/plugins-platform-frontend
# Packages
/packages/ @grafana/grafana-frontend-platform @grafana/plugins-platform-frontend
@@ -338,6 +355,7 @@
/packages/grafana-ui/src/components/DataLinks/ @grafana/dataviz-squad
/packages/grafana-ui/src/components/DateTimePickers/ @grafana/grafana-frontend-platform
/packages/grafana-ui/src/components/Gauge/ @grafana/dataviz-squad
/packages/grafana-ui/src/components/PluginSignatureBadge/ @grafana/plugins-platform-frontend
/packages/grafana-ui/src/components/Sparkline/ @grafana/grafana-frontend-platform @grafana/app-o11y-visualizations
/packages/grafana-ui/src/components/Table/ @grafana/dataviz-squad
/packages/grafana-ui/src/components/Table/SparklineCell.tsx @grafana/dataviz-squad @grafana/app-o11y-visualizations
@@ -359,6 +377,7 @@
/package.json @grafana/frontend-ops
/nx.json @grafana/frontend-ops
/project.json @grafana/frontend-ops
/.nxignore @grafana/frontend-ops
/tsconfig.json @grafana/frontend-ops
/.editorconfig @grafana/frontend-ops
/.eslintignore @grafana/frontend-ops
@@ -392,13 +411,16 @@ playwright.config.ts @grafana/plugins-platform-frontend
/public/app/core/components/TimeSeries/ @grafana/dataviz-squad
/public/app/core/components/TimelineChart/ @grafana/dataviz-squad
/public/app/core/components/Form/ @grafana/grafana-frontend-platform
/public/app/core/components/OptionsUI/ @grafana/dashboards-squad @grafana/dataviz-squad
/public/app/core/history/ @grafana/explore-squad
/public/app/features/all.ts @grafana/grafana-frontend-platform
/public/app/features/admin/ @grafana/identity-access-team
# Temp owners until Enterprise team takes over
/public/app/features/migrate-to-cloud @grafana/grafana-frontend-platform
/public/app/features/actions/ @grafana/dataviz-squad
/public/app/features/auth-config/ @grafana/identity-squad
/public/app/features/annotations/ @grafana/dashboards-squad
/public/app/features/api-keys/ @grafana/identity-squad
@@ -411,6 +433,7 @@ playwright.config.ts @grafana/plugins-platform-frontend
/public/app/features/dashboard/ @grafana/dashboards-squad
/public/app/features/dashboard/components/TransformationsEditor/ @grafana/dataviz-squad
/public/app/features/dashboard-scene/ @grafana/dashboards-squad
/public/app/features/scopes/ @grafana/dashboards-squad
/public/app/features/datasources/ @grafana/plugins-platform-frontend
/public/app/features/dimensions/ @grafana/dataviz-squad
/public/app/features/dataframe-import/ @grafana/dataviz-squad
@@ -421,7 +444,7 @@ playwright.config.ts @grafana/plugins-platform-frontend
/public/app/features/invites/ @grafana/grafana-frontend-platform
/public/app/features/library-panels/ @grafana/dashboards-squad
/public/app/features/logs/ @grafana/observability-logs
/public/app/features/live/ @grafana/grafana-app-platform-squad
/public/app/features/live/ @grafana/dashboards-squad
/public/app/features/apiserver/ @grafana/grafana-app-platform-squad
/public/app/features/manage-dashboards/ @grafana/dashboards-squad
/public/app/features/notifications/ @grafana/grafana-frontend-platform
@@ -473,7 +496,7 @@ playwright.config.ts @grafana/plugins-platform-frontend
/public/app/plugins/panel/geomap/ @grafana/dataviz-squad
/public/app/plugins/panel/canvas/ @grafana/dataviz-squad
/public/app/plugins/panel/candlestick/ @grafana/dataviz-squad
/public/app/plugins/panel/live/ @grafana/grafana-app-platform-squad
/public/app/plugins/panel/live/ @grafana/dashboards-squad
/public/app/plugins/panel/news/ @grafana/grafana-frontend-platform
/public/app/plugins/panel/stat/ @grafana/dataviz-squad
/public/app/plugins/panel/text/ @grafana/grafana-frontend-platform
@@ -497,7 +520,8 @@ playwright.config.ts @grafana/plugins-platform-frontend
/public/test/ @grafana/grafana-frontend-platform
/public/test/helpers/alertingRuleEditor.tsx @grafana/alerting-frontend
/public/views/ @grafana/grafana-frontend-platform
/public/views/swagger.html @grafana/grafana-backend-group
/public/views/swagger.html @grafana/grafana-app-platform-squad
/public/swagger/ @grafana/grafana-app-platform-squad
/public/app/features/explore/Logs/ @grafana/observability-logs
@@ -649,6 +673,7 @@ embed.go @grafana/grafana-as-code
/pkg/registry/ @grafana/grafana-as-code
/pkg/registry/apis/ @grafana/grafana-app-platform-squad
/pkg/registry/apis/alerting @grafana/grafana-app-platform-squad @grafana/alerting-backend
/pkg/registry/apis/query @grafana/grafana-datasources-core-services
/pkg/codegen/ @grafana/grafana-as-code
/pkg/codegen/generators @grafana/grafana-as-code
/pkg/kinds/*/*_gen.go @grafana/grafana-as-code
@@ -658,7 +683,7 @@ embed.go @grafana/grafana-as-code
# GitHub Workflows and Templates
/.github/CODEOWNERS @tolzhabayev
/.github/ISSUE_TEMPLATE/ @torkelo
/.github/ISSUE_TEMPLATE/ @torkelo @sympatheticmoose
/.github/PULL_REQUEST_TEMPLATE.md @torkelo
/.github/bot.md @torkelo
/.github/commands.json @torkelo
@@ -715,7 +740,7 @@ embed.go @grafana/grafana-as-code
/.github/workflows/i18n-crowdin-upload.yml @grafana/grafana-frontend-platform
/.github/workflows/i18n-crowdin-download.yml @grafana/grafana-frontend-platform
/.github/workflows/pr-go-workspace-check.yml @grafana/grafana-app-platform-squad
/.github/workflows/run-scenes-e2e.yml @grafana/dashboards-squad
/.github/workflows/pr-k8s-codegen-check.yml @grafana/grafana-app-platform-squad
/.github/workflows/go_lint.yml @grafana/grafana-backend-services-squad
/.github/workflows/trivy-scan.yml @grafana/grafana-backend-services-squad
/.github/workflows/changelog.yml @zserge

746
.github/commands.json vendored
View File

@@ -458,5 +458,749 @@
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/471"
}
},
{
"type": "label",
"name": "area/alerting",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/52"
}
},
{
"type": "label",
"name": "area/backend",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/665"
}
},
{
"type": "label",
"name": "type/build-packaging",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/509"
}
},
{
"type": "label",
"name": "type/accessibility",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/78"
}
},
{
"type": "label",
"name": "area/transformations",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/56"
}
},
{
"type": "label",
"name": "area/auth",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/660"
}
},
{
"type": "label",
"name": "area/plugins",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/76"
}
},
{
"type": "label",
"name": "area/annotations",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/56"
}
},
{
"type": "label",
"name": "area/annotations",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/provisioning",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/599"
}
},
{
"type": "label",
"name": "area/scenes",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "datasource/Postgres",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/457"
}
},
{
"type": "label",
"name": "area/panel/logs",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/203"
}
},
{
"type": "label",
"name": "area/public-dashboards",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/482"
}
},
{
"type": "label",
"name": "area/exploremetrics",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/112"
}
},
{
"type": "label",
"name": "area/auth/oauth",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/660"
}
},
{
"type": "label",
"name": "area/panel/traceview",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/221"
}
},
{
"type": "label",
"name": "area/auth/rbac",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/660"
}
},
{
"type": "label",
"name": "area/expressions",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/112"
}
},
{
"type": "label",
"name": "area/backend/api",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/319"
}
},
{
"type": "label",
"name": "area/security",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/470"
}
},
{
"type": "label",
"name": "area/admin/user",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/660"
}
},
{
"type": "label",
"name": "area/panel/node-graph",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/221"
}
},
{
"type": "label",
"name": "area/configuration",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/96"
}
},
{
"type": "label",
"name": "area/frontend/library-panels",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/auth/ldap",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/660"
}
},
{
"type": "label",
"name": "datasource/MSSQL",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/190"
}
},
{
"type": "label",
"name": "datasource/Jaeger",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/457"
}
},
{
"type": "label",
"name": "area/navigation",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/78"
}
},
{
"type": "label",
"name": "area/search",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/78"
}
},
{
"type": "label",
"name": "area/search",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/panel/flame-graph",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/221"
}
},
{
"type": "label",
"name": "area/auth/serviceaccount",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/660"
}
},
{
"type": "label",
"name": "area/field/overrides",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/backend/db/sql",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/457"
}
},
{
"type": "label",
"name": "area/image-rendering",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/482"
}
},
{
"type": "label",
"name": "area/backend/db/postgres",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/96"
}
},
{
"type": "label",
"name": "area/permissions",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/660"
}
},
{
"type": "label",
"name": "area/dashboard/import",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/dashboard/links",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/dashboard/templating",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/dashboard/variables",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/dashboards/panel",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/dashboard/data-links",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/dashboard/rows",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/dashboard/edit",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/panel/edit",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/dashboard/scenes",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/dashboard/snapshot",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/dashboard/folders",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/dashboard/timerange",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/dashboard/repeating",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/dashboard/annotations",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/dashboard/library-panel",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/dashboard/kiosk",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/dashboard/tv",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/dashboard/import",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/panel/field-override",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/panel/repeat",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/dashboard/settings",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/backend/db/sqlite",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/599"
}
},
{
"type": "label",
"name": "area/backend/db/mysql",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/45"
}
},
{
"type": "label",
"name": "type/browser-compatibility",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/78"
}
},
{
"type": "label",
"name": "area/panel/text",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/78"
}
},
{
"type": "label",
"name": "datasource/Zipkin",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/457"
}
},
{
"type": "label",
"name": "area/streaming",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/319"
}
},
{
"type": "label",
"name": "area/frontend/login",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/78"
}
},
{
"type": "label",
"name": "datasource/Parca",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/457"
}
},
{
"type": "label",
"name": "datasource/CSV",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/457"
}
},
{
"type": "label",
"name": "area/panel/datagrid",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/56"
}
},
{
"type": "label",
"name": "area/panel/dashboard-list",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "team/grafana-aws-datasources",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/97"
}
},
{
"type": "label",
"name": "datasource/Zabbix",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/457"
}
},
{
"type": "label",
"name": "datasource/TestDataDB",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/76"
}
},
{
"type": "label",
"name": "datasource/Splunk",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/55"
}
},
{
"type": "label",
"name": "datasource/SiteWIse",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/97"
}
},
{
"type": "label",
"name": "datasource/Phlare",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/221"
}
},
{
"type": "label",
"name": "datasource/JSON",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/457"
}
},
{
"type": "label",
"name": "datasource/BigQuery",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/457"
}
},
{
"type": "label",
"name": "datasource/Alertmanager",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/52"
}
},
{
"type": "label",
"name": "area/recorded-queries",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/112"
}
},
{
"type": "label",
"name": "area/panel/singlestat",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/56"
}
},
{
"type": "label",
"name": "area/panel/annotation-list",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/202"
}
},
{
"type": "label",
"name": "area/editor",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/grafana/grafana/projects/21"
}
},
{
"type": "label",
"name": "area/data/export",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/56"
}
},
{
"type": "label",
"name": "datasource/azure-cosmosdb",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/190"
}
},
{
"type": "label",
"name": "datasource/X-Ray",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/97"
}
},
{
"type": "label",
"name": "datasource/Timestream",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/97"
}
},
{
"type": "label",
"name": "datasource/OpenSearch",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/97"
}
},
{
"type": "label",
"name": "datasource/GoogleSheets",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/457"
}
},
{
"type": "label",
"name": "datasource/GitHub",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/457"
}
},
{
"type": "label",
"name": "datasource/MySQL",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/457"
}
},
{
"type": "label",
"name": "area/query-library",
"action": "addToProject",
"addToProject": {
"url": "https://github.com/orgs/grafana/projects/736"
}
}
]
]

View File

@@ -6,6 +6,6 @@
},
"noLabels": true,
"addLabel": "internal",
"comment": " please add one or more appropriate labels. Here are some tips:\r\n\r\n- if you are making an issue, TODO, or reminder for yourself or your team, please add one label that best describes the product or feature area. Please also add the issue to your project board. :rocket:\r\n\r\n- if you are making an issue for any other reason (docs typo, you found a bug, etc), please add at least one label that best describes the product or feature that you are discussing (e.g. `area/alerting`, `datasource/loki`, `type/docs`, `type/bug`, etc). [Our issue triage](https://github.com/grafana/grafana/blob/main/ISSUE_TRIAGE.md#3-categorizing-an-issue) doc also provides additional guidance on labeling. :rocket:\r\n\r\n Thank you! :heart:"
"comment": " please add one or more appropriate labels. Here are some tips:\r\n\r\n- if you are making an issue, TODO, or reminder for yourself or your team, please add one label that best describes the product or feature area. Please also add the issue to your project board. :rocket:\r\n\r\n- if you are making an issue for any other reason (docs typo, you found a bug, etc), please add at least one label that best describes the product or feature that you are discussing (e.g. `area/alerting`, `datasource/loki`, `type/docs`, `type/bug`, etc). [Our issue triage](https://github.com/grafana/grafana/blob/main/contribute/ISSUE_TRIAGE.md#3-categorize-an-issue) doc also provides additional guidance on labeling. :rocket:\r\n\r\n Thank you! :heart:"
}
]

View File

@@ -199,7 +199,7 @@ const getChangeLogItems = async (name, owner, sinceDate, to) => {
hasLabel({ labels }, 'area/grafana/ui') ||
hasLabel({ labels }, 'area/grafana/toolkit') ||
hasLabel({ labels }, 'area/grafana/runtime');
const author = item.commits.nodes[0].commit.author.user.login;
const author = item.commits.nodes[0].commit.author.user?.login;
return {
repo: name,
number,
@@ -285,7 +285,7 @@ ${items
`- ${item.title.replace(/^([^:]*:)/gm, '**$1**')} ${
item.repo === 'grafana-enterprise'
? '(Enterprise)'
: `${pullRequestLink(item.number)}, ${userLink(item.author)}`
: `${pullRequestLink(item.number)}${item.author ? ', ' + userLink(item.author) : ''}`
}`
)
.join('\n')}

View File

@@ -2,6 +2,10 @@ name: Generate changelog
on:
workflow_call:
inputs:
previous_version:
type: string
required: false
description: 'The release version (semver, git tag, branch or commit) to use for comparison'
version:
type: string
required: true
@@ -26,6 +30,10 @@ on:
workflow_dispatch:
inputs:
previous_version:
type: string
required: false
description: 'The release version (semver, git tag, branch or commit) to use for comparison'
version:
type: string
required: true
@@ -86,6 +94,7 @@ jobs:
id: changelog
uses: ./.github/workflows/actions/changelog
with:
previous: ${{ inputs.previous_version }}
github_token: ${{ steps.generate_token.outputs.token }}
target: v${{ inputs.version }}
output_file: changelog_items.md

View File

@@ -1,11 +1,21 @@
name: Run commands when issues are labeled or comments added
# important: this workflow uses a github app that is strictly limited
# to issues. If you want to change the triggers for this workflow,
# please review if the permissions are still sufficient.
on:
issues:
types: [labeled, unlabeled]
issue_comment:
types: [created]
concurrency:
group: issue-commands-${{ github.event.issue.number }}
permissions:
contents: read
id-token: write
jobs:
config:
runs-on: "ubuntu-latest"
@@ -16,7 +26,7 @@ jobs:
id: check
shell: bash
run: |
if [ -n "${{ (secrets.GRAFANA_MISC_STATS_API_KEY != '' && secrets.ISSUE_COMMANDS_TOKEN != '') || '' }}" ]; then
if [ "${{ github.repository }}" == "grafana/grafana" ] && [ -n "${{ secrets.GRAFANA_MISC_STATS_API_KEY }}" ]; then
echo "has-secrets=1" >> "$GITHUB_OUTPUT"
fi
@@ -25,17 +35,34 @@ jobs:
if: needs.config.outputs.has-secrets
runs-on: ubuntu-latest
steps:
- name: "Get vault secrets"
id: vault-secrets
uses: grafana/shared-workflows/actions/get-vault-secrets@main
with:
# Secrets placed in the ci/repo/grafana/grafana/plugins_platform_issue_commands_github_bot path in Vault
repo_secrets: |
GH_APP_ID=plugins_platform_issue_commands_github_bot:app_id
GH_APP_PEM=plugins_platform_issue_commands_github_bot:app_pem
- name: "Generate token"
id: generate_token
uses: tibdex/github-app-token@b62528385c34dbc9f38e5f4225ac829252d1ea92
with:
app_id: ${{ env.GH_APP_ID }}
private_key: ${{ env.GH_APP_PEM }}
- name: Checkout Actions
uses: actions/checkout@v4
with:
repository: "grafana/grafana-github-actions"
path: ./actions
ref: main
- name: Install Actions
run: npm install --production --prefix ./actions
- name: Run Commands
uses: ./actions/commands
with:
metricsWriteAPIKey: ${{secrets.GRAFANA_MISC_STATS_API_KEY}}
token: ${{secrets.ISSUE_COMMANDS_TOKEN}}
token: ${{ steps.generate_token.outputs.token }}
configPath: commands

View File

@@ -11,7 +11,6 @@ on:
branches:
- "main"
- "v*.*.*"
- "release-*.*.*"
# This is run before the pull request has been merged, so we'll run against the src branch
jobs:

View File

@@ -2,6 +2,10 @@
---
name: Levitate / Detect breaking changes in PR
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
pull_request:
paths:
@@ -11,7 +15,7 @@ on:
jobs:
buildPR:
name: Build PR
name: Build PR packages artifacts
runs-on: ubuntu-latest
defaults:
run:
@@ -27,7 +31,7 @@ jobs:
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "dir=$(yarn config get cacheFolder)" >> $GITHUB_OUTPUT
run: echo "dir=$(yarn config get cacheFolder)" >> "$GITHUB_OUTPUT"
- name: Restore yarn cache
uses: actions/cache@v4
@@ -57,7 +61,7 @@ jobs:
path: './pr/pr_built_packages.zip'
buildBase:
name: Build Base
name: Build Base packages artifacts
runs-on: ubuntu-latest
defaults:
run:
@@ -75,7 +79,7 @@ jobs:
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "dir=$(yarn config get cacheFolder)" >> $GITHUB_OUTPUT
run: echo "dir=$(yarn config get cacheFolder)" >> "$GITHUB_OUTPUT"
- name: Restore yarn cache
uses: actions/cache@v4
@@ -105,7 +109,7 @@ jobs:
path: './base/base_built_packages.zip'
Detect:
name: Detect breaking changes
name: Detect breaking changes between PR and base
runs-on: ubuntu-latest
needs: ['buildPR', 'buildBase']
env:
@@ -141,6 +145,7 @@ jobs:
with:
workload_identity_provider: ${{ secrets.WIF_PROVIDER }}
service_account: ${{ secrets.LEVITATE_SA }}
project_id: 'grafanalabs-global'
- name: 'Set up Cloud SDK'
uses: 'google-github-actions/setup-gcloud@v2'
@@ -149,16 +154,6 @@ jobs:
project_id: 'grafanalabs-global'
install_components: 'bq'
# This step is needed to generate a detailed levitate report
- name: Set up gcloud project
run: |
unset CLOUDSDK_CORE_PROJECT
unset GCLOUD_PROJECT
unset GCP_PROJECT
unset GOOGLE_CLOUD_PROJECT
gcloud config set project grafanalabs-global
- name: Get link for the Github Action job
id: job
uses: actions/github-script@v6
@@ -188,7 +183,7 @@ jobs:
Report:
name: Report breaking changes in PR
name: Report breaking changes in PR comment
runs-on: ubuntu-latest
needs: ['Detect']
@@ -243,9 +238,9 @@ jobs:
echo 'levitate_markdown<<EOF'
cat levitate.md
echo EOF
} >> $GITHUB_OUTPUT
} >> "$GITHUB_OUTPUT"
else
echo "levitate_markdown=No breaking changes detected" >> $GITHUB_OUTPUT
echo "levitate_markdown=No breaking changes detected" >> "$GITHUB_OUTPUT"
fi
@@ -262,7 +257,8 @@ jobs:
${{ steps.levitate-markdown.outputs.levitate_markdown }}
[Read our guideline](https://github.com/grafana/grafana/blob/main/contribute/breaking-changes-guide/breaking-changes-guide.md)
[Console output](${{ steps.levitate-run.outputs.job_link }})
* Your pull request merge won't be blocked.
GITHUB_TOKEN: ${{ steps.generate_token.outputs.token }}
# Remove comment from the PR (no more breaking changes)
@@ -362,5 +358,10 @@ jobs:
});
- name: Exit
run: exit ${{ steps.levitate-run.outputs.exit_code }}
run: |
if [ "${{ steps.levitate-run.outputs.exit_code }}" -ne 0 ]; then
echo "Breaking changes detected. Please check the levitate report in your pull request. This workflow won't block merging."
fi
exit ${{ steps.levitate-run.outputs.exit_code }}
shell: bash

View File

@@ -8,7 +8,7 @@ on:
type: string
latest:
required: false
default: "0"
default: false
description: Mark this release as latest (`1`) or not (`0`, default)
type: string
dry_run:
@@ -23,7 +23,6 @@ on:
type: string
latest:
required: false
default: "0"
description: Mark this release as latest (`1`) or not (`0`, default)
type: string
dry_run:

View File

@@ -25,8 +25,8 @@ jobs:
- name: golangci-lint
uses: golangci/golangci-lint-action@v6
with:
version: v1.59.1
version: v1.60.1
args: |
--config .golangci.toml --max-same-issues=0 --max-issues-per-linter=0 --verbose $(./scripts/go-workspace/golangci-lint-includes.sh)
--config .golangci.toml --max-same-issues=0 --max-issues-per-linter=0 --verbose $(./scripts/go-workspace/golangci-lint-includes.sh)
skip-cache: true
install-mode: binary

View File

@@ -14,10 +14,6 @@ jobs:
pull-requests: write # needed to update PR description, labels, etc
steps:
- uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
- name: Generate token
id: generate_token
uses: tibdex/github-app-token@b62528385c34dbc9f38e5f4225ac829252d1ea92
@@ -25,9 +21,14 @@ jobs:
app_id: ${{ secrets.GRAFANA_PR_AUTOMATION_APP_ID }}
private_key: ${{ secrets.GRAFANA_PR_AUTOMATION_APP_PEM }}
- uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
token: ${{ steps.generate_token.outputs.token }}
- name: Download sources
id: crowdin-download
uses: crowdin/github-action@v1
uses: crowdin/github-action@v2
with:
upload_sources: false
upload_translations: false

View File

@@ -17,7 +17,7 @@ jobs:
uses: actions/checkout@v4
- name: Upload sources
uses: crowdin/github-action@v1
uses: crowdin/github-action@v2
with:
upload_sources: true
upload_sources_args: '--dest=public/locales/en-US/grafana.json'

View File

@@ -49,8 +49,8 @@ jobs:
fi
# set environment for next steps
echo "CHANNEL=${CHANNEL}" >> $GITHUB_ENV
echo "TEAM=${TEAM}" >> $GITHUB_ENV
echo "CHANNEL=${CHANNEL}" >> "$GITHUB_ENV"
echo "TEAM=${TEAM}" >> "$GITHUB_ENV"
- name: "Prepare payload"
uses: frabert/replace-string-action@v2.5
@@ -64,22 +64,22 @@ jobs:
- name: Get Token
id: get_workflow_token
uses: peter-murray/workflow-application-token-action@v3
uses: tibdex/github-app-token@3beb63f4bd073e61482598c45c71c1019b59b73a
with:
application_id: ${{ secrets.APP_GRAFANA_TEAM_CHECKER_ID }}
application_private_key: ${{ secrets.APP_GRAFANA_TEAM_CHECKER_KEY }}
app_id: ${{ secrets.APP_GRAFANA_TEAM_CHECKER_ID }}
private_key: ${{ secrets.APP_GRAFANA_TEAM_CHECKER_KEY }}
- name: "Check that issue author is not part of the team"
if: ${{ env.TEAM != 'null' }}
run: |
response=$(gh api /orgs/grafana/teams/${{ env.TEAM }}/memberships/${{ github.event.issue.user.login }} -i -H "Accept: application/vnd.github.v3+json")
STATUS_CODE=$(echo "$response" | head -n 1 | cut -d' ' -f2)
if [ "$status_code" -eq 404 ]; then
if [ "$STATUS_CODE" -eq "404" ]; then
echo "The user was not found in the team."
echo "USER_FOUND=false" >> $GITHUB_ENV
echo "USER_FOUND=false" >> "$GITHUB_ENV"
else
echo "The user was potentially found in the team"
echo "USER_FOUND=maybe" >> $GITHUB_ENV
echo "USER_FOUND=maybe" >> "$GITHUB_ENV"
fi
env:
GITHUB_TOKEN: ${{ steps.get_workflow_token.outputs.token }}

View File

@@ -1,28 +1,120 @@
name: Run commands when issues are opened
# important: this workflow uses a github app that is strictly limited
# to issues. If you want to change the triggers for this workflow,
# please review if the permissions are still sufficient.
on:
issues:
types: [opened]
concurrency:
group: issue-opened-${{ github.event.issue.number }}
permissions:
contents: read
id-token: write
jobs:
main:
runs-on: ubuntu-latest
if: github.repository == 'grafana/grafana'
steps:
- name: Checkout Actions
uses: actions/checkout@v4
with:
repository: "grafana/grafana-github-actions"
path: ./actions
ref: main
- name: Install Actions
run: npm install --production --prefix ./actions
# give issue-openers a chance to add labels after submit
- name: Sleep for 2 minutes
run: sleep 2m
shell: bash
- name: "Get vault secrets"
id: vault-secrets
uses: grafana/shared-workflows/actions/get-vault-secrets@main
with:
# Secrets placed in the ci/repo/grafana/grafana/plugins_platform_issue_commands_github_bot path in Vault
repo_secrets: |
GH_APP_ID=plugins_platform_issue_commands_github_bot:app_id
GH_APP_PEM=plugins_platform_issue_commands_github_bot:app_pem
- name: "Generate token"
id: generate_token
uses: tibdex/github-app-token@b62528385c34dbc9f38e5f4225ac829252d1ea92
with:
app_id: ${{ env.GH_APP_ID }}
private_key: ${{ env.GH_APP_PEM }}
- name: Run Commands
uses: ./actions/commands
with:
metricsWriteAPIKey: ${{secrets.GRAFANA_MISC_STATS_API_KEY}}
token: ${{secrets.ISSUE_COMMANDS_TOKEN}}
token: ${{ steps.generate_token.outputs.token }}
configPath: "issue-opened"
auto-triage:
needs: [main]
if: github.repository == 'grafana/grafana' && github.event.issue.author_association != 'MEMBER' && github.event.issue.author_association != 'OWNER'
runs-on: ubuntu-latest
steps:
- name: "Get vault secrets"
id: vault-secrets
uses: grafana/shared-workflows/actions/get-vault-secrets@main
with:
# Secrets placed in the ci/repo/grafana/grafana/plugins_platform_issue_triager path in Vault
repo_secrets: |
AUTOTRIAGER_OPENAI_API_KEY=plugins_platform_issue_triager:AUTOTRIAGER_OPENAI_API_KEY
AUTOTRIAGER_SLACK_WEBHOOK_URL=plugins_platform_issue_triager:AUTOTRIAGER_SLACK_WEBHOOK_URL
GH_APP_ID=plugins_platform_issue_commands_github_bot:app_id
GH_APP_PEM=plugins_platform_issue_commands_github_bot:app_pem
- name: "Generate token"
id: generate_token
uses: tibdex/github-app-token@b62528385c34dbc9f38e5f4225ac829252d1ea92
with:
app_id: ${{ env.GH_APP_ID }}
private_key: ${{ env.GH_APP_PEM }}
- name: Checkout auto-triager repository
uses: actions/checkout@v4
with:
repository: grafana/auto-triager
path: auto-triager
token: ${{ steps.generate_token.outputs.token }}
- name: Send issue to the auto triager action
id: auto_triage
# https://github.com/grafana/auto-triager/blob/main/action.yml
#uses: grafana/auto-triager@main
uses: ./auto-triager
with:
token: ${{ steps.generate_token.outputs.token }}
issue_number: ${{ github.event.issue.number }}
openai_api_key: ${{ env.AUTOTRIAGER_OPENAI_API_KEY }}
add_labels: true
- name: Labels from auto triage
run: |
echo ${{ steps.auto_triage.outputs.triage_labels }}
- name: "Send Slack notification"
if: ${{ steps.auto_triage.outputs.triage_labels != '' }}
uses: slackapi/slack-github-action@v1.27.0
with:
payload: >
{
"icon_emoji": ":robocto:",
"username": "Auto Triager",
"type": "mrkdwn",
"text": "Auto triager found the following labels: ${{ steps.auto_triage.outputs.triage_labels }} for issue ${{ github.event.issue.html_url }}",
"channel": "#triage-automation-ci"
}
env:
SLACK_WEBHOOK_URL: ${{ env.AUTOTRIAGER_SLACK_WEBHOOK_URL }}

View File

@@ -30,4 +30,6 @@ jobs:
echo "Please run 'make update-workspace' and commit the changes."
echo "If there is a change in enterprise dependencies, please update pkg/extensions/main.go."
exit 1
fi
fi
- name: Ensure Dockerfile contains submodule COPY commands
run: ./scripts/go-workspace/validate-dockerfile.sh

View File

@@ -0,0 +1,38 @@
name: "K8s Codegen Check"
on:
workflow_dispatch:
pull_request:
branches: [main]
paths:
- "pkg/apis/**"
- "pkg/aggregator/apis/**"
- "pkg/apimachinery/apis/**"
- "hack/**"
- "*.sum"
jobs:
check:
name: K8s Codegen Check
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set go version
uses: actions/setup-go@v4
with:
go-version-file: go.mod
- name: Update k8s codegen
run: ./hack/update-codegen.sh
- name: Check for k8s codegen changes
run: |
if ! git diff --exit-code --quiet; then
echo "Changes detected:"
git diff
echo "Please run './hack/update-codegen.sh' and commit the changes."
exit 1
fi

View File

@@ -20,10 +20,10 @@ jobs:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: grafana/writers-toolkit/publish-technical-documentation-release@publish-technical-documentation-release/v2
- uses: grafana/writers-toolkit/publish-technical-documentation-release@publish-technical-documentation-release/v1
with:
release_tag_regexp: "^v(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)$"
release_branch_regexp: "^v(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)\\.x$"
release_branch_with_patch_regexp: "^v(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)$"
release_tag_regexp: "^v(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$"
release_branch_regexp: "^v(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.x$"
release_branch_with_patch_regexp: "^v(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$"
website_directory: content/docs/grafana
version_suffix: ""

View File

@@ -8,11 +8,10 @@ on:
dry_run:
required: false
default: true
type: boolean
version:
required: true
latest:
type: boolean
type: bool
default: false
pull_request:
types:
@@ -31,18 +30,17 @@ jobs:
latest: ${{ steps.output.outputs.latest }}
runs-on: ubuntu-latest
steps:
# The github-release action expects a `LATEST` value of a string of either '1' or '0'
- if: ${{ github.event_name == 'workflow_dispatch' }}
run: |
echo setting up GITHUB_ENV for ${{ github.event_name }}
echo "VERSION=${{ inputs.version }}" >> $GITHUB_ENV
echo "DRY_RUN=${{ inputs.dry_run }}" >> $GITHUB_ENV
echo "LATEST=${{ inputs.latest && '1' || '0' }}" >> $GITHUB_ENV
echo "LATEST=${{ inputs.latest }}" >> $GITHUB_ENV
- if: ${{ github.event.pull_request.merged == true && startsWith(github.head_ref, 'release/') }}
run: |
echo "VERSION=$(echo ${{ github.head_ref }} | sed -e 's/release\/.*\///g')" >> $GITHUB_ENV
echo "DRY_RUN=${{ contains(github.event.pull_request.labels.*.name, 'release/dry-run') }}" >> $GITHUB_ENV
echo "LATEST=${{ contains(github.event.pull_request.labels.*.name, 'release/latest') && '1' || '0' }}" >> $GITHUB_ENV
echo "LATEST=${{ contains(github.event.pull_request.labels.*.name, 'release/latest') }}" >> $GITHUB_ENV
- id: output
run: |
echo "dry_run: $DRY_RUN"

View File

@@ -8,6 +8,10 @@ name: Complete a Grafana release
on:
workflow_dispatch:
inputs:
previous_version:
type: string
required: false
description: 'The release version (semver, git tag, branch or commit) to use for comparison'
version:
required: true
type: string
@@ -38,6 +42,7 @@ jobs:
name: Create PR to main to update the changelog
uses: ./.github/workflows/changelog.yml
with:
previous_version: ${{inputs.previous_version}}
version: ${{ inputs.version }}
latest: ${{ inputs.latest }}
dry_run: ${{ inputs.dry_run }}

View File

@@ -1,47 +0,0 @@
name: Run dashboard scenes e2e
on:
schedule:
- cron: "0 8 * * 1-5" # every day at 08:00UTC on weekdays
# push # uncomment for test run during PR
env:
ARCH: linux-amd64
jobs:
dashboard-scenes-e2e:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Pin Go version to mod file
uses: actions/setup-go@v5
with:
go-version-file: 'go.mod'
- run: go version
- uses: actions/setup-node@v4
with:
node-version: 20
- name: Install dependencies
run: yarn install --immutable
- name: Build grafana
run: make build
- name: Install Cypress dependencies
uses: cypress-io/github-action@v6
with:
runTests: false
- name: Run dashboard scenes e2e
run: yarn e2e:scenes
- name: "Send Slack notification"
if: ${{ failure() }}
uses: slackapi/slack-github-action@v1.26.0
with:
payload: >
{
"icon_emoji": ":this-is-fine-fire:",
"username": "Dashboard scenes e2e tests failed",
"text": "Link to run: https://github.com/${{github.repository}}/actions/runs/${{github.run_id}}",
"channel": "#grafana-dashboards-squad"
}
env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}

3
.gitignore vendored
View File

@@ -220,3 +220,6 @@ public/app/plugins/**/dist/
# Locally enabling the Go race detector until we can globally do so
.go-race-enabled-locally
# Mock service worker used for fake API responses in frontend development
public/mockServiceWorker.js

View File

@@ -1,6 +1,7 @@
[run]
timeout = "20m"
concurrency = 10
allow-parallel-runners = true
[linters-settings.exhaustive]
default-signifies-exhaustive = true
@@ -98,6 +99,21 @@ files = [
"**/pkg/apimachinery/**/*"
]
[linters-settings.depguard.rules.aggregator]
list-mode = "lax"
allow = [
"github.com/grafana/grafana/pkg/aggregator",
"github.com/grafana/grafana/pkg/semconv",
"github.com/grafana/grafana/pkg/apimachinery",
]
deny = [
{ pkg = "github.com/grafana/grafana/pkg", desc = "apimachinery is not allowed to import grafana core" }
]
files = [
"./pkg/aggregator/*",
"./pkg/aggregator/**/*"
]
[linters-settings.depguard.rules.promlib]
list-mode = "lax" # allow unless explicitely denied
deny = [
@@ -107,10 +123,48 @@ allow = [
"github.com/grafana/grafana/pkg/promlib"
]
files = [
"**/pkg/promlib/*",
"**/pkg/promlib/**/*"
]
[linters-settings.depguard.rules.storage-unified-resource]
list-mode = "lax"
allow = [
"github.com/grafana/grafana/pkg/apimachinery",
]
deny = [
{ pkg = "github.com/grafana/grafana/pkg", desc = "pkg/storage/unified/resource is not allowed to import grafana core" }
]
files = [
"./pkg/storage/unified/resource/*",
"./pkg/storage/unified/resource/**/*"
]
[linters-settings.depguard.rules.storage-unified-apistore]
list-mode = "lax"
allow = [
"github.com/grafana/grafana/pkg/apimachinery",
"github.com/grafana/grafana/pkg/apiserver",
"github.com/grafana/grafana/pkg/unified/resource",
]
deny = [
{ pkg = "github.com/grafana/grafana/pkg", desc = "pkg/storage/unified/apistore is not allowed to import grafana core" }
]
files = [
"./pkg/storage/unified/apistore/*",
"./pkg/storage/unified/apistore/**/*"
]
[linters-settings.depguard.rules.apps-playlist]
list-mode = "lax"
allow = []
deny = [
{ pkg = "github.com/grafana/grafana/pkg", desc = "apps/playlist is not allowed to import grafana core" }
]
files = [
"./apps/playlist/*",
"./apps/playlist/**/*"
]
[linters-settings.gocritic]
enabled-checks = ["ruleguard"]
[linters-settings.gocritic.settings.ruleguard]

1
.nxignore Normal file
View File

@@ -0,0 +1 @@
!conf/custom.ini

View File

@@ -28,5 +28,8 @@ public/api-merged.json
public/api-enterprise-spec.json
public/openapi3.json
# Generated mock service worker
public/mockServiceWorker.js
# Crowdin files
public/locales/**/*.json

File diff suppressed because one or more lines are too long

View File

@@ -26,7 +26,7 @@ plugins:
- path: .yarn/plugins/@yarnpkg/plugin-outdated.cjs
spec: 'https://mskelton.dev/yarn-outdated/v2'
yarnPath: .yarn/releases/yarn-4.4.0.cjs
yarnPath: .yarn/releases/yarn-4.5.0.cjs
# Uncomment the following lines if you want to use Verdaccio local npm registry. Read more at packages/README.md
#npmScopes:
# grafana:

View File

@@ -1,85 +1,87 @@
<!-- 11.2.6 START -->
<!-- 11.3.1 START -->
# 11.2.6 (2025-01-28)
# 11.3.1 (2024-11-19)
### Features and enhancements
- **Azure Monitor:** Add a feature flag to toggle user auth for Azure Monitor only [#97565](https://github.com/grafana/grafana/pull/97565), [@adamyeats](https://github.com/adamyeats)
- **Security:** Update to Go 1.22.11 - Backport to v11.2.x [#99125](https://github.com/grafana/grafana/pull/99125), [@Proximyst](https://github.com/Proximyst)
- **Security:** Update to Go 1.22.11 - Backport to v11.2.x (Enterprise)
- **Alerting:** Make context deadline on AlertNG service startup configurable [#96135](https://github.com/grafana/grafana/pull/96135), [@fayzal-g](https://github.com/fayzal-g)
- **MigrationAssistant:** Restrict dashboards, folders and datasources by the org id of the signed in user [#96345](https://github.com/grafana/grafana/pull/96345), [@leandro-deveikis](https://github.com/leandro-deveikis)
- **User:** Check SignedInUser OrgID in RevokeInvite [#95490](https://github.com/grafana/grafana/pull/95490), [@mgyongyosi](https://github.com/mgyongyosi)
### Bug fixes
- **Azure/GCM:** Improve error display [#97591](https://github.com/grafana/grafana/pull/97591), [@aangelisc](https://github.com/aangelisc)
<!-- 11.2.6 END -->
<!-- 11.2.5 START -->
# 11.2.5 (2024-12-04)
### Bug fixes
- **Fix:** Do not fetch Orgs if the user is authenticated by apikey/sa or render key [#97264](https://github.com/grafana/grafana/pull/97264), [@mgyongyosi](https://github.com/mgyongyosi)
<!-- 11.2.5 END -->
<!-- 11.2.4 START -->
# 11.2.4 (2024-11-19)
### Features and enhancements
- **Alerting:** Make context deadline on AlertNG service startup configurable [#96133](https://github.com/grafana/grafana/pull/96133), [@fayzal-g](https://github.com/fayzal-g)
- **MigrationAssistant:** Restrict dashboards, folders and datasources by the org id of the signed in user [#96344](https://github.com/grafana/grafana/pull/96344), [@leandro-deveikis](https://github.com/leandro-deveikis)
- **Transformations:** Add 'transpose' transform [#95076](https://github.com/grafana/grafana/pull/95076), [@jmdane](https://github.com/jmdane)
- **User:** Check SignedInUser OrgID in RevokeInvite [#95489](https://github.com/grafana/grafana/pull/95489), [@mgyongyosi](https://github.com/mgyongyosi)
### Bug fixes
- **Alerting:** Force refetch prom rules when refreshing panel [#96124](https://github.com/grafana/grafana/pull/96124), [@soniaAguilarPeiron](https://github.com/soniaAguilarPeiron)
- **Anonymous User:** Adds validator service for anonymous users [#94993](https://github.com/grafana/grafana/pull/94993), [@leandro-deveikis](https://github.com/leandro-deveikis)
- **Alerting:** Fix escaping of silence matchers in utf8 mode [#95347](https://github.com/grafana/grafana/pull/95347), [@tomratcliffe](https://github.com/tomratcliffe)
- **Alerting:** Fix overflow for long receiver names [#95133](https://github.com/grafana/grafana/pull/95133), [@gillesdemey](https://github.com/gillesdemey)
- **Alerting:** Fix saving advanced mode toggle state in the alert rule editor [#95981](https://github.com/grafana/grafana/pull/95981), [@alexander-akhmetov](https://github.com/alexander-akhmetov)
- **Alerting:** Fix setting datasource uid, when datasource is string in old version [#96273](https://github.com/grafana/grafana/pull/96273), [@soniaAguilarPeiron](https://github.com/soniaAguilarPeiron)
- **Alerting:** Force refetch prom rules when refreshing panel [#96125](https://github.com/grafana/grafana/pull/96125), [@soniaAguilarPeiron](https://github.com/soniaAguilarPeiron)
- **Anonymous User:** Adds validator service for anonymous users [#94994](https://github.com/grafana/grafana/pull/94994), [@leandro-deveikis](https://github.com/leandro-deveikis)
- **Anonymous User:** Adds validator service for anonymous users (Enterprise)
- **Azure Monitor:** Support metric namespaces fallback [#95154](https://github.com/grafana/grafana/pull/95154), [@aangelisc](https://github.com/aangelisc)
- **Azure:** Fix duplicated traces in multi-resource trace query [#95246](https://github.com/grafana/grafana/pull/95246), [@aangelisc](https://github.com/aangelisc)
- **Azure:** Handle namespace request rejection [#95908](https://github.com/grafana/grafana/pull/95908), [@aangelisc](https://github.com/aangelisc)
- **Folders:** Add admin permissions upon creation of a folder w. SA [#95416](https://github.com/grafana/grafana/pull/95416), [@eleijonmarck](https://github.com/eleijonmarck)
- **Migration:** Remove table aliasing in delete statement to make it work for mariadb [#95231](https://github.com/grafana/grafana/pull/95231), [@kalleep](https://github.com/kalleep)
- **ServerLock:** Fix pg concurrency/locking issue [#95934](https://github.com/grafana/grafana/pull/95934), [@mgyongyosi](https://github.com/mgyongyosi)
- **ServerSideExpressions:** Disable SQL Expressions to prevent RCE and LFI vulnerability [#94959](https://github.com/grafana/grafana/pull/94959), [@samjewell](https://github.com/samjewell)
- **Azure Monitor:** Support metric namespaces fallback [#95155](https://github.com/grafana/grafana/pull/95155), [@aangelisc](https://github.com/aangelisc)
- **Azure:** Fix duplicated traces in multi-resource trace query [#95247](https://github.com/grafana/grafana/pull/95247), [@aangelisc](https://github.com/aangelisc)
- **Azure:** Handle namespace request rejection [#95909](https://github.com/grafana/grafana/pull/95909), [@aangelisc](https://github.com/aangelisc)
- **CloudWatch:** Interpolate region in log context query [#94990](https://github.com/grafana/grafana/pull/94990), [@iwysiu](https://github.com/iwysiu)
- **Dashboard datasource:** Return annotations as series when query topic is "annotations" [#95971](https://github.com/grafana/grafana/pull/95971), [@kaydelaney](https://github.com/kaydelaney)
- **Dashboard:** Append orgId to URL [#95963](https://github.com/grafana/grafana/pull/95963), [@bfmatei](https://github.com/bfmatei)
- **Dashboards:** Fixes performance issue expanding a row [#95321](https://github.com/grafana/grafana/pull/95321), [@torkelo](https://github.com/torkelo)
- **Flame Graph:** Fix crash when it receives empty data [#96211](https://github.com/grafana/grafana/pull/96211), [@yincongcyincong](https://github.com/yincongcyincong)
- **Folders:** Add admin permissions upon creation of a folder w. SA [#95365](https://github.com/grafana/grafana/pull/95365), [@eleijonmarck](https://github.com/eleijonmarck)
- **Folders:** Don't show error pop-up if the user can't fetch the root folder [#95600](https://github.com/grafana/grafana/pull/95600), [@IevaVasiljeva](https://github.com/IevaVasiljeva)
- **Migration:** Remove table aliasing in delete statement to make it work for mariadb [#95232](https://github.com/grafana/grafana/pull/95232), [@kalleep](https://github.com/kalleep)
- **ServerLock:** Fix pg concurrency/locking issue [#95935](https://github.com/grafana/grafana/pull/95935), [@mgyongyosi](https://github.com/mgyongyosi)
- **Service Accounts:** Run service account creation in transaction [#94803](https://github.com/grafana/grafana/pull/94803), [@IevaVasiljeva](https://github.com/IevaVasiljeva)
- **Table:** Fix text wrapping applying to wrong field [#95425](https://github.com/grafana/grafana/pull/95425), [@codeincarnate](https://github.com/codeincarnate)
- **Unified Storage:** Use ssl_mode instead of sslmode [#95662](https://github.com/grafana/grafana/pull/95662), [@chaudyg](https://github.com/chaudyg)
<!-- 11.2.4 END -->
<!-- 11.2.3+security-01 START -->
<!-- 11.3.1 END -->
<!-- 11.3.0+security-01 START -->
# 11.2.3+security-01 (2024-11-12)
# 11.3.0+security-01 (2024-11-12)
### Bug fixes
- **MigrationAssistant:** Fix Migration Assistant issue [CVE-2024-9476]
<!-- 11.2.3+security-01 END -->
<!-- 11.2.3 START -->
<!-- 11.3.0+security-01 END -->
<!-- 11.3.0 START -->
# 11.2.3 (2024-10-22)
# 11.3.0 (2024-10-22)
### Features and enhancements
- **Alerting:** Add manage permissions UI logic for Contact Points [#92885](https://github.com/grafana/grafana/pull/92885), [@tomratcliffe](https://github.com/tomratcliffe)
- **Alerting:** Allow linking to silence form with `__alert_rule_uid__` value preset [#93526](https://github.com/grafana/grafana/pull/93526), [@tomratcliffe](https://github.com/tomratcliffe)
- **Alerting:** Hide query name when using simplified mode in the alert rule [#93779](https://github.com/grafana/grafana/pull/93779), [@soniaAguilarPeiron](https://github.com/soniaAguilarPeiron)
- **Alerting:** Limit and clean up old alert rules versions [#89754](https://github.com/grafana/grafana/pull/89754), [@igloo12](https://github.com/igloo12)
- **Alerting:** Style nits for the simple query mode [#93930](https://github.com/grafana/grafana/pull/93930), [@soniaAguilarPeiron](https://github.com/soniaAguilarPeiron)
- **Alerting:** Update texts in annotations step [#93977](https://github.com/grafana/grafana/pull/93977), [@soniaAguilarPeiron](https://github.com/soniaAguilarPeiron)
- **Alerting:** Use useProduceNewAlertmanagerConfiguration for contact points [#88456](https://github.com/grafana/grafana/pull/88456), [@gillesdemey](https://github.com/gillesdemey)
- **Auth:** Attach external session info to Grafana session [#93849](https://github.com/grafana/grafana/pull/93849), [@mgyongyosi](https://github.com/mgyongyosi)
- **Auth:** Replace jmespath/go-jmespath with jmespath-community/go-jmespath [#94203](https://github.com/grafana/grafana/pull/94203), [@mgyongyosi](https://github.com/mgyongyosi)
- **CloudMigrations:** Add support for migration of Library Elements (Panels) resources [#93898](https://github.com/grafana/grafana/pull/93898), [@macabu](https://github.com/macabu)
- **Cloudwatch:** Update grafana-aws-sdk [#94155](https://github.com/grafana/grafana/pull/94155), [@iwysiu](https://github.com/iwysiu)
- **Explore Logs:** Preinstall for onprem Grafana instances [#94221](https://github.com/grafana/grafana/pull/94221), [@svennergr](https://github.com/svennergr)
- **ExploreMetrics:** Ensure compatibility with Incremental Querying [#94355](https://github.com/grafana/grafana/pull/94355), [@NWRichmond](https://github.com/NWRichmond)
- **FieldConfig:** Add support for Actions [#92874](https://github.com/grafana/grafana/pull/92874), [@adela-almasan](https://github.com/adela-almasan)
- **Plugin Extensions:** Require meta-data to be defined in `plugin.json` during development mode [#93429](https://github.com/grafana/grafana/pull/93429), [@leventebalogh](https://github.com/leventebalogh)
- **Reporting:** Display template variables in the PDF (Enterprise)
- **Tempo:** Add deprecation notice for Aggregate By [#94050](https://github.com/grafana/grafana/pull/94050), [@joey-grafana](https://github.com/joey-grafana)
### Bug fixes
- **Alerting:** Fix incorrect permission on POST external rule groups endpoint [CVE-2024-8118] [#93947](https://github.com/grafana/grafana/pull/93947), [@alexweav](https://github.com/alexweav)
- **AzureMonitor:** Fix App Insights portal URL for multi-resource trace queries [#94475](https://github.com/grafana/grafana/pull/94475), [@aangelisc](https://github.com/aangelisc)
- **Canvas:** Allow API calls to grafana origin [#94129](https://github.com/grafana/grafana/pull/94129), [@adela-almasan](https://github.com/adela-almasan)
- **Folders:** Correctly show new folder button under root folder [#94712](https://github.com/grafana/grafana/pull/94712), [@IevaVasiljeva](https://github.com/IevaVasiljeva)
- **OrgSync:** Do not set default Organization for a user to a non-existent Organization [#94549](https://github.com/grafana/grafana/pull/94549), [@mgyongyosi](https://github.com/mgyongyosi)
- **Plugins:** Skip install errors if dependency plugin already exists [#94717](https://github.com/grafana/grafana/pull/94717), [@wbrowne](https://github.com/wbrowne)
- **ServerSideExpressions:** Disable SQL Expressions to prevent RCE and LFI vulnerability [#94959](https://github.com/grafana/grafana/pull/94959), [@samjewell](https://github.com/samjewell)
- **Alerting/Chore:** Fix TimeRangeInput not working across multiple months [#93622](https://github.com/grafana/grafana/pull/93622), [@tomratcliffe](https://github.com/tomratcliffe)
- **Alerting:** Fix default value for input in simple condition [#94248](https://github.com/grafana/grafana/pull/94248), [@soniaAguilarPeiron](https://github.com/soniaAguilarPeiron)
- **Alerting:** Fix eval interval not being saved when creating a new group [#93821](https://github.com/grafana/grafana/pull/93821), [@tomratcliffe](https://github.com/tomratcliffe)
- **Alerting:** Fix incorrect permission on POST external rule groups endpoint [CVE-2024-8118] [#93940](https://github.com/grafana/grafana/pull/93940), [@alexweav](https://github.com/alexweav)
- **Alerting:** Fix panics when attempting to create an Alertmanager after failing [#94023](https://github.com/grafana/grafana/pull/94023), [@santihernandezc](https://github.com/santihernandezc)
- **DashboardScene:** Fixes url issue with subpath when exiting edit mode [#93962](https://github.com/grafana/grafana/pull/93962), [@torkelo](https://github.com/torkelo)
- **Dashboards:** Enable scenes by default [#93818](https://github.com/grafana/grafana/pull/93818), [@ivanortegaalba](https://github.com/ivanortegaalba)
- **Dashboards:** Fixes view & edit keyboard shortcuts when grafana is behind a subpath [#93955](https://github.com/grafana/grafana/pull/93955), [@torkelo](https://github.com/torkelo)
- **ElasticSearch:** Fix errorsource in newInstanceSettings [#93859](https://github.com/grafana/grafana/pull/93859), [@iwysiu](https://github.com/iwysiu)
- **Reporting:** Fix reports on multi-org instance (Enterprise)
- **SubMenu:** Fix expanding sub menu items on touch devices [#93208](https://github.com/grafana/grafana/pull/93208), [@yincongcyincong](https://github.com/yincongcyincong)
<!-- 11.2.3 END -->
<!-- 11.2.2+security-01 START -->
# 11.2.2+security-01 (2024-10-17)
### Bug fixes
- **SQL Expressions**: Fixes CVE-2024-9264
<!-- 11.2.2+security-01 END -->
<!-- 11.3.0 END -->
<!-- 11.2.2 START -->
# 11.2.2 (2024-10-01)
@@ -103,15 +105,72 @@
- **Plugins:** Avoid returning 404 for `AutoEnabled` apps [#93488](https://github.com/grafana/grafana/pull/93488), [@wbrowne](https://github.com/wbrowne)
<!-- 11.2.2 END -->
<!-- 11.2.1+security-01 START -->
<!-- 11.1.7 START -->
# 11.2.1+security-01 (2024-10-17)
# 11.1.7 (2024-10-01)
### Features and enhancements
- **Chore:** Bump Go to 1.22.7 [#93355](https://github.com/grafana/grafana/pull/93355), [@hairyhenderson](https://github.com/hairyhenderson)
- **Chore:** Bump Go to 1.22.7 (Enterprise)
### Bug fixes
- **SQL Expressions**: Fixes CVE-2024-9264
- **Alerting:** Fix preview of silences when label name contains spaces [#93050](https://github.com/grafana/grafana/pull/93050), [@tomratcliffe](https://github.com/tomratcliffe)
- **Alerting:** Make query wrapper match up datasource UIDs if necessary [#93115](https://github.com/grafana/grafana/pull/93115), [@tomratcliffe](https://github.com/tomratcliffe)
- **AzureMonitor:** Deduplicate resource picker rows [#93704](https://github.com/grafana/grafana/pull/93704), [@aangelisc](https://github.com/aangelisc)
- **AzureMonitor:** Improve resource picker efficiency [#93439](https://github.com/grafana/grafana/pull/93439), [@aangelisc](https://github.com/aangelisc)
- **AzureMonitor:** Remove Basic Logs retention warning [#93122](https://github.com/grafana/grafana/pull/93122), [@aangelisc](https://github.com/aangelisc)
- **Correlations:** Limit access to correlations page to users who can access Explore [#93675](https://github.com/grafana/grafana/pull/93675), [@ifrost](https://github.com/ifrost)
- **Plugins:** Avoid returning 404 for `AutoEnabled` apps [#93487](https://github.com/grafana/grafana/pull/93487), [@wbrowne](https://github.com/wbrowne)
<!-- 11.2.1+security-01 END -->
<!-- 11.1.7 END -->
<!-- 11.0.6 START -->
# 11.0.6 (2024-10-01)
### Features and enhancements
- **Chore:** Bump Go to 1.22.7 [#93358](https://github.com/grafana/grafana/pull/93358), [@hairyhenderson](https://github.com/hairyhenderson)
- **Chore:** Bump Go to 1.22.7 (Enterprise)
### Bug fixes
- **AzureMonitor:** Deduplicate resource picker rows [#93703](https://github.com/grafana/grafana/pull/93703), [@aangelisc](https://github.com/aangelisc)
- **AzureMonitor:** Improve resource picker efficiency [#93438](https://github.com/grafana/grafana/pull/93438), [@aangelisc](https://github.com/aangelisc)
- **Correlations:** Limit access to correlations page to users who can access Explore [#93674](https://github.com/grafana/grafana/pull/93674), [@ifrost](https://github.com/ifrost)
- **Plugins:** Avoid returning 404 for `AutoEnabled` apps [#93486](https://github.com/grafana/grafana/pull/93486), [@wbrowne](https://github.com/wbrowne)
<!-- 11.0.6 END -->
<!-- 10.4.10 START -->
# 10.4.10 (2024-10-01)
### Features and enhancements
- **Chore:** Bump Go to 1.22.7 [#93359](https://github.com/grafana/grafana/pull/93359), [@hairyhenderson](https://github.com/hairyhenderson)
- **Chore:** Bump Go to 1.22.7 (Enterprise)
### Bug fixes
- **AzureMonitor:** Deduplicate resource picker rows [#93702](https://github.com/grafana/grafana/pull/93702), [@aangelisc](https://github.com/aangelisc)
- **Correlations:** Limit access to correlations page to users who can access Explore [#93673](https://github.com/grafana/grafana/pull/93673), [@ifrost](https://github.com/ifrost)
<!-- 10.4.10 END -->
<!-- 10.3.11 START -->
# 10.3.11 (2024-10-01)
### Features and enhancements
- **Chore:** Bump Go to 1.22.7 [#93360](https://github.com/grafana/grafana/pull/93360), [@hairyhenderson](https://github.com/hairyhenderson)
- **Chore:** Bump Go to 1.22.7 (Enterprise)
### Bug fixes
- **Correlations:** Limit access to correlations page to users who can access Explore [#93672](https://github.com/grafana/grafana/pull/93672), [@ifrost](https://github.com/ifrost)
<!-- 10.3.11 END -->
<!-- 11.2.1 START -->
# 11.2.1 (2024-09-26)
@@ -142,6 +201,63 @@
- **AutoSizeInput:** Allow to be controlled by value [#92999](https://github.com/grafana/grafana/pull/92999), [@ivanortegaalba](https://github.com/ivanortegaalba)
<!-- 11.2.1 END -->
<!-- 11.1.6 START -->
# 11.1.6 (2024-09-26)
### Features and enhancements
- **Chore:** Update swagger ui (4.3.0 to 5.17.14) [#92341](https://github.com/grafana/grafana/pull/92341), [@ryantxu](https://github.com/ryantxu)
### Bug fixes
- **Templating:** Fix searching non-latin template variables [#92892](https://github.com/grafana/grafana/pull/92892), [@leeoniya](https://github.com/leeoniya)
- **TutorialCard:** Fix link to tutorial not opening [#92646](https://github.com/grafana/grafana/pull/92646), [@eledobleefe](https://github.com/eledobleefe)
### Plugin development fixes & changes
- **Bugfix:** QueryField typeahead missing background color [#92316](https://github.com/grafana/grafana/pull/92316), [@mckn](https://github.com/mckn)
- **Alerting:** Fixed CVE-2024-8118.
<!-- 11.1.6 END -->
<!-- 11.0.5 START -->
# 11.0.5 (2024-09-26)
### Features and enhancements
- **Chore:** Update swagger ui (4.3.0 to 5.17.14) [#92345](https://github.com/grafana/grafana/pull/92345), [@ryantxu](https://github.com/ryantxu)
### Bug fixes
- **Provisioning:** Prevent provisioning folder errors from failing startup [#92588](https://github.com/grafana/grafana/pull/92588), [@suntala](https://github.com/suntala)
- **TutorialCard:** Fix link to tutorial not opening [#92645](https://github.com/grafana/grafana/pull/92645), [@eledobleefe](https://github.com/eledobleefe)
- **Alerting:** Fixed CVE-2024-8118.
<!-- 11.0.5 END -->
<!-- 10.4.9 START -->
# 10.4.9 (2024-09-26)
### Features and enhancements
- **Chore:** Update swagger ui (4.3.0 to 5.17.14) [#92344](https://github.com/grafana/grafana/pull/92344), [@ryantxu](https://github.com/ryantxu)
### Bug fixes
- **Provisioning:** Prevent provisioning folder errors from failing startup [#92591](https://github.com/grafana/grafana/pull/92591), [@suntala](https://github.com/suntala)
- **Alerting:** Fixed CVE-2024-8118.
<!-- 10.4.9 END -->
<!-- 10.3.10 START -->
# 10.3.10 (2024-09-26)
### Bug fixes
- **Alerting:** Fixed CVE-2024-8118.
<!-- 10.3.10 END -->
<!-- 11.2.0 START -->
# 11.2.0 (2024-08-27)
@@ -341,6 +457,82 @@
- **Runtime:** Add provider and access hook for location service [#90759](https://github.com/grafana/grafana/pull/90759), [@aocenas](https://github.com/aocenas)
<!-- 11.2.0 END -->
<!-- 11.1.5 START -->
# 11.1.5 (2024-08-27)
### Bug fixes
- **Alerting:** Fix permissions for prometheus rule endpoints [#91414](https://github.com/grafana/grafana/pull/91414), [@yuri-tceretian](https://github.com/yuri-tceretian)
- **Alerting:** Fix persisting result fingerprint that is used by recovery threshold [#91290](https://github.com/grafana/grafana/pull/91290), [@yuri-tceretian](https://github.com/yuri-tceretian)
- **Auditing:** Fix a possible crash when audit logger parses responses for failed requests (Enterprise)
- **RBAC:** Fix an issue with server admins not being able to manage users in orgs that they don't belong to [#92273](https://github.com/grafana/grafana/pull/92273), [@IevaVasiljeva](https://github.com/IevaVasiljeva)
- **RBAC:** Fix an issue with server admins not being able to manage users in orgs that they dont belong to (Enterprise)
- **RBAC:** Fix seeder failures when inserting duplicated permissions (Enterprise)
- **Snapshots:** Fix panic when snapshot_remove_expired is true [#91232](https://github.com/grafana/grafana/pull/91232), [@ryantxu](https://github.com/ryantxu)
- **VizTooltip:** Fix positioning at bottom and right edges on mobile [#92137](https://github.com/grafana/grafana/pull/92137), [@leeoniya](https://github.com/leeoniya)
### Plugin development fixes & changes
- **Bugfix:** QueryField typeahead missing background color [#92316](https://github.com/grafana/grafana/pull/92316), [@mckn](https://github.com/mckn)
<!-- 11.1.5 END -->
<!-- 11.0.4 START -->
# 11.0.4 (2024-08-27)
### Bug fixes
- **Alerting:** Fix persisting result fingerprint that is used by recovery threshold [#91328](https://github.com/grafana/grafana/pull/91328), [@yuri-tceretian](https://github.com/yuri-tceretian)
- **Auditing:** Fix a possible crash when audit logger parses responses for failed requests (Enterprise)
- **RBAC:** Fix seeder failures when inserting duplicated permissions (Enterprise)
- **Snapshots:** Fix panic when snapshot_remove_expired is true [#91330](https://github.com/grafana/grafana/pull/91330), [@ryantxu](https://github.com/ryantxu)
<!-- 11.0.4 END -->
<!-- 10.4.8 START -->
# 10.4.8 (2024-08-27)
### Bug fixes
- **Alerting:** Fix persisting result fingerprint that is used by recovery threshold [#91331](https://github.com/grafana/grafana/pull/91331), [@yuri-tceretian](https://github.com/yuri-tceretian)
- **Auditing:** Fix a possible crash when audit logger parses responses for failed requests (Enterprise)
- **RBAC:** Fix seeder failures when inserting duplicated permissions (Enterprise)
- **Snapshots:** Fix panic when snapshot_remove_expired is true [#91329](https://github.com/grafana/grafana/pull/91329), [@ryantxu](https://github.com/ryantxu)
<!-- 10.4.8 END -->
<!-- 10.3.9 START -->
# 10.3.9 (2024-08-27)
<!-- 10.3.9 END -->
<!-- 11.1.4 START -->
# 11.1.4 (2024-08-14)
### Bug fixes
- **Swagger:** Fixed CVE-2024-6837.
<!-- 11.1.4 END -->
<!-- 11.0.3 START -->
# 11.0.3 (2024-08-14)
### Bug fixes
- **Swagger:** Fixed CVE-2024-6837.
<!-- 11.0.3 END -->
<!-- 10.4.7 START -->
# 10.4.7 (2024-08-14)
### Bug fixes
- **Swagger:** Fixed CVE-2024-6837.
<!-- 10.4.7 END -->
<!-- 11.1.3 START -->
# 11.1.3 (2024-07-26)

View File

@@ -1,19 +1,14 @@
# syntax=docker/dockerfile:1
# to maintain formatting of multiline commands in vscode, add the following to settings.json:
# "docker.languageserver.formatter.ignoreMultilineInstructions": true
ARG BASE_IMAGE=alpine:3.19.1
ARG JS_IMAGE=node:20-alpine
ARG JS_PLATFORM=linux/amd64
ARG GO_IMAGE=golang:1.22.11-alpine
ARG GO_IMAGE=golang:1.23.1-alpine
# Default to building locally
ARG GO_SRC=go-builder
ARG JS_SRC=js-builder
# Javascript build stage
FROM --platform=${JS_PLATFORM} ${JS_IMAGE} AS js-builder
FROM --platform=${JS_PLATFORM} ${JS_IMAGE} as js-builder
ENV NODE_OPTIONS=--max_old_space_size=8000
@@ -25,6 +20,7 @@ COPY packages packages
COPY plugins-bundled plugins-bundled
COPY public public
COPY LICENSE ./
COPY conf/defaults.ini ./conf/defaults.ini
RUN apk add --no-cache make build-base python3
@@ -37,8 +33,7 @@ COPY emails emails
ENV NODE_ENV production
RUN yarn build
# Golang build stage
FROM ${GO_IMAGE} AS go-builder
FROM ${GO_IMAGE} as go-builder
ARG COMMIT_SHA=""
ARG BUILD_BRANCH=""
@@ -50,6 +45,7 @@ RUN if grep -i -q alpine /etc/issue; then \
apk add --no-cache \
# This is required to allow building on arm64 due to https://github.com/golang/go/issues/22040
binutils-gold \
bash \
# Install build dependencies
gcc g++ make git; \
fi
@@ -67,7 +63,10 @@ COPY pkg/build/go.* pkg/build/
COPY pkg/build/wire/go.* pkg/build/wire/
COPY pkg/promlib/go.* pkg/promlib/
COPY pkg/storage/unified/resource/go.* pkg/storage/unified/resource/
COPY pkg/storage/unified/apistore/go.* pkg/storage/unified/apistore/
COPY pkg/semconv/go.* pkg/semconv/
COPY pkg/aggregator/go.* pkg/aggregator/
COPY apps/playlist/go.* apps/playlist/
RUN go mod download
RUN if [[ "$BINGO" = "true" ]]; then \
@@ -92,8 +91,7 @@ ENV BUILD_BRANCH=${BUILD_BRANCH}
RUN make build-go GO_BUILD_TAGS=${GO_BUILD_TAGS} WIRE_TAGS=${WIRE_TAGS}
# From-tarball build stage
FROM ${BASE_IMAGE} AS tgz-builder
FROM ${BASE_IMAGE} as tgz-builder
WORKDIR /tmp/grafana
@@ -105,8 +103,8 @@ COPY ${GRAFANA_TGZ} /tmp/grafana.tar.gz
RUN tar x -z -f /tmp/grafana.tar.gz --strip-components=1
# helpers for COPY --from
FROM ${GO_SRC} AS go-src
FROM ${JS_SRC} AS js-src
FROM ${GO_SRC} as go-src
FROM ${JS_SRC} as js-src
# Final stage
FROM ${BASE_IMAGE}
@@ -141,20 +139,19 @@ RUN if grep -i -q alpine /etc/issue; then \
fi
# glibc support for alpine x86_64 only
# docker run --rm --env STDOUT=1 sgerrand/glibc-builder 2.40 /usr/glibc-compat > glibc-bin-2.40.tar.gz
ARG GLIBC_VERSION=2.40
RUN if grep -i -q alpine /etc/issue && [ `arch` = "x86_64" ]; then \
wget -qO- "https://dl.grafana.com/glibc/glibc-bin-$GLIBC_VERSION.tar.gz" | tar zxf - -C / \
usr/glibc-compat/lib/ld-linux-x86-64.so.2 \
usr/glibc-compat/lib/libc.so.6 \
usr/glibc-compat/lib/libdl.so.2 \
usr/glibc-compat/lib/libm.so.6 \
usr/glibc-compat/lib/libpthread.so.0 \
usr/glibc-compat/lib/librt.so.1 \
usr/glibc-compat/lib/libresolv.so.2 && \
mkdir /lib64 && \
ln -s /usr/glibc-compat/lib/ld-linux-x86-64.so.2 /lib64; \
wget -q -O /etc/apk/keys/sgerrand.rsa.pub https://alpine-pkgs.sgerrand.com/sgerrand.rsa.pub && \
wget https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.35-r0/glibc-2.35-r0.apk \
-O /tmp/glibc-2.35-r0.apk && \
wget https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.35-r0/glibc-bin-2.35-r0.apk \
-O /tmp/glibc-bin-2.35-r0.apk && \
apk add --force-overwrite --no-cache /tmp/glibc-2.35-r0.apk /tmp/glibc-bin-2.35-r0.apk && \
rm -f /lib64/ld-linux-x86-64.so.2 && \
ln -s /usr/glibc-compat/lib64/ld-linux-x86-64.so.2 /lib64/ld-linux-x86-64.so.2 && \
rm -f /tmp/glibc-2.35-r0.apk && \
rm -f /tmp/glibc-bin-2.35-r0.apk && \
rm -f /lib/ld-linux-x86-64.so.2 && \
rm -f /etc/ld.so.cache; \
fi
COPY --from=go-src /tmp/grafana/conf ./conf

View File

@@ -8,7 +8,7 @@ WIRE_TAGS = "oss"
include .bingo/Variables.mk
GO = go
GO_VERSION = 1.22.11
GO_VERSION = 1.23.1
GO_LINT_FILES ?= $(shell ./scripts/go-workspace/golangci-lint-includes.sh)
GO_TEST_FILES ?= $(shell ./scripts/go-workspace/test-includes.sh)
SH_FILES ?= $(shell find ./scripts -name *.sh)
@@ -18,6 +18,9 @@ GO_BUILD_FLAGS += $(if $(GO_BUILD_DEV),-dev)
GO_BUILD_FLAGS += $(if $(GO_BUILD_TAGS),-build-tags=$(GO_BUILD_TAGS))
GO_BUILD_FLAGS += $(GO_RACE_FLAG)
# GNU xargs has flag -r, and BSD xargs (e.g. MacOS) has that behaviour by default
XARGSR = $(shell xargs --version 2>&1 | grep -q GNU && echo xargs -r || echo xargs)
targets := $(shell echo '$(sources)' | tr "," " ")
GO_INTEGRATION_TESTS := $(shell find ./pkg -type f -name '*_test.go' -exec grep -l '^func TestIntegration' '{}' '+' | grep -o '\(.*\)/' | sort -u)
@@ -239,6 +242,14 @@ test-go-unit: ## Run unit tests for backend with flags.
printf '$(GO_TEST_FILES)' | xargs \
$(GO) test $(GO_RACE_FLAG) -short -covermode=atomic -timeout=30m
.PHONY: test-go-unit-pretty
test-go-unit-pretty: check-tparse
@if [ -z "$(FILES)" ]; then \
echo "Notice: FILES variable is not set. Try \"make test-go-unit-pretty FILES=./pkg/services/mysvc\""; \
exit 1; \
fi
$(GO) test $(GO_RACE_FLAG) -timeout=10s $(FILES) -json | tparse -all
.PHONY: test-go-integration
test-go-integration: ## Run integration tests for backend with flags.
@echo "test backend integration tests"
@@ -295,6 +306,15 @@ golangci-lint: $(GOLANGCI_LINT)
.PHONY: lint-go
lint-go: golangci-lint ## Run all code checks for backend. You can use GO_LINT_FILES to specify exact files to check
.PHONY: lint-go-diff
lint-go-diff: $(GOLANGCI_LINT)
git diff --name-only remotes/origin/main | \
grep '\.go$$' | \
$(XARGSR) dirname | \
sort -u | \
sed 's,^,./,' | \
$(XARGSR) $(GOLANGCI_LINT) run --config .golangci.toml
# with disabled SC1071 we are ignored some TCL,Expect `/usr/bin/env expect` scripts
.PHONY: shellcheck
shellcheck: $(SH_FILES) ## Run checks for shell scripts.
@@ -338,27 +358,32 @@ build-docker-full-ubuntu: ## Build Docker image based on Ubuntu for development.
##@ Services
# create docker-compose file with provided sources and start them
# example: make devenv sources=postgres,auth/openldap
COMPOSE := $(shell if docker compose --help >/dev/null 2>&1; then echo docker compose; else echo docker-compose; fi)
ifeq ($(COMPOSE),docker-compose)
$(warning From July 2023 Compose V1 (docker-compose) stopped receiving updates. Migrate to Compose V2 (docker compose). https://docs.docker.com/compose/migrate/)
endif
# Create a Docker Compose file with provided sources and start them.
# For example, `make devenv sources=postgres,auth/openldap`
.PHONY: devenv
ifeq ($(sources),)
devenv:
@printf 'You have to define sources for this command \nexample: make devenv sources=postgres,openldap\n'
@printf 'You have to define sources for this command \nexample: make devenv sources=postgres,auth/openldap\n'
else
devenv: devenv-down ## Start optional services, e.g. postgres, prometheus, and elasticsearch.
devenv: devenv-down ## Start optional services like Postgresql, Prometheus, or Elasticsearch.
@cd devenv; \
./create_docker_compose.sh $(targets) || \
(rm -rf {docker-compose.yaml,conf.tmp,.env}; exit 1)
@cd devenv; \
docker-compose up -d --build
$(COMPOSE) up -d --build
endif
.PHONY: devenv-down
devenv-down: ## Stop optional services.
@cd devenv; \
test -f docker-compose.yaml && \
docker-compose down || exit 0;
$(COMPOSE) down || exit 0;
.PHONY: devenv-postgres
devenv-postgres:
@@ -431,6 +456,12 @@ go-race-is-enabled:
enable-go-race:
@touch .go-race-enabled-locally
check-tparse:
@command -v tparse >/dev/null 2>&1 || { \
echo >&2 "Error: tparse is not installed. Refer to https://github.com/mfridman/tparse"; \
exit 1; \
}
.PHONY: help
help: ## Display this help.
@awk 'BEGIN {FS = ":.*##"; printf "\nUsage:\n make \033[36m<target>\033[0m\n"} /^[a-zA-Z_-]+:.*?##/ { printf " \033[36m%-15s\033[0m %s\n", $$1, $$2 } /^##@/ { printf "\n\033[1m%s\033[0m\n", substr($$0, 5) } ' $(MAKEFILE_LIST)

View File

@@ -0,0 +1,25 @@
package core
templateGroup: {
kind: "TemplateGroup"
group: "notifications"
apiResource: {
groupOverride: "notifications.alerting.grafana.app"
}
codegen: {
frontend: false
backend: true
}
pluralName: "TemplatesGroups"
current: "v0alpha1"
versions: {
"v0alpha1": {
schema: {
spec: {
title: string
content: string
}
}
}
}
}

3
apps/playlist/Makefile Normal file
View File

@@ -0,0 +1,3 @@
.PHONY: generate
generate:
@grafana-app-sdk generate -g ./apis --kindgrouping=group --postprocess

View File

@@ -0,0 +1,28 @@
//
// Code generated by grafana-app-sdk. DO NOT EDIT.
//
package v0alpha1
import (
"encoding/json"
"io"
"github.com/grafana/grafana-app-sdk/resource"
)
// PlaylistJSONCodec is an implementation of resource.Codec for kubernetes JSON encoding
type PlaylistJSONCodec struct{}
// Read reads JSON-encoded bytes from `reader` and unmarshals them into `into`
func (*PlaylistJSONCodec) Read(reader io.Reader, into resource.Object) error {
return json.NewDecoder(reader).Decode(into)
}
// Write writes JSON-encoded bytes into `writer` marshaled from `from`
func (*PlaylistJSONCodec) Write(writer io.Writer, from resource.Object) error {
return json.NewEncoder(writer).Encode(from)
}
// Interface compliance checks
var _ resource.Codec = &PlaylistJSONCodec{}

View File

@@ -0,0 +1,32 @@
package v0alpha1
import (
"time"
)
// PlaylistMetadata defines model for PlaylistMetadata.
type PlaylistMetadata struct {
CreatedBy string `json:"createdBy"`
CreationTimestamp time.Time `json:"creationTimestamp"`
DeletionTimestamp *time.Time `json:"deletionTimestamp,omitempty"`
Finalizers []string `json:"finalizers"`
Generation int64 `json:"generation"`
Labels map[string]string `json:"labels"`
ResourceVersion string `json:"resourceVersion"`
Uid string `json:"uid"`
UpdateTimestamp time.Time `json:"updateTimestamp"`
UpdatedBy string `json:"updatedBy"`
}
// _kubeObjectMetadata is metadata found in a kubernetes object's metadata field.
// It is not exhaustive and only includes fields which may be relevant to a kind's implementation,
// As it is also intended to be generic enough to function with any API Server.
type PlaylistKubeObjectMetadata struct {
CreationTimestamp time.Time `json:"creationTimestamp"`
DeletionTimestamp *time.Time `json:"deletionTimestamp,omitempty"`
Finalizers []string `json:"finalizers"`
Generation int64 `json:"generation"`
Labels map[string]string `json:"labels"`
ResourceVersion string `json:"resourceVersion"`
Uid string `json:"uid"`
}

View File

@@ -0,0 +1,265 @@
//
// Code generated by grafana-app-sdk. DO NOT EDIT.
//
package v0alpha1
import (
"fmt"
"github.com/grafana/grafana-app-sdk/resource"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/types"
"time"
)
// +k8s:openapi-gen=true
type Playlist struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata"`
Spec PlaylistSpec `json:"spec"`
PlaylistStatus PlaylistStatus `json:"status"`
}
func (o *Playlist) GetSpec() any {
return o.Spec
}
func (o *Playlist) SetSpec(spec any) error {
cast, ok := spec.(PlaylistSpec)
if !ok {
return fmt.Errorf("cannot set spec type %#v, not of type Spec", spec)
}
o.Spec = cast
return nil
}
func (o *Playlist) GetSubresources() map[string]any {
return map[string]any{
"status": o.PlaylistStatus,
}
}
func (o *Playlist) GetSubresource(name string) (any, bool) {
switch name {
case "status":
return o.PlaylistStatus, true
default:
return nil, false
}
}
func (o *Playlist) SetSubresource(name string, value any) error {
switch name {
case "status":
cast, ok := value.(PlaylistStatus)
if !ok {
return fmt.Errorf("cannot set status type %#v, not of type PlaylistStatus", value)
}
o.PlaylistStatus = cast
return nil
default:
return fmt.Errorf("subresource '%s' does not exist", name)
}
}
func (o *Playlist) GetStaticMetadata() resource.StaticMetadata {
return resource.StaticMetadata{
Name: o.ObjectMeta.Name,
Namespace: o.ObjectMeta.Namespace,
Group: o.GroupVersionKind().Group,
Version: o.GroupVersionKind().Version,
Kind: o.GroupVersionKind().Kind,
}
}
func (o *Playlist) SetStaticMetadata(metadata resource.StaticMetadata) {
o.Name = metadata.Name
o.Namespace = metadata.Namespace
o.SetGroupVersionKind(schema.GroupVersionKind{
Group: metadata.Group,
Version: metadata.Version,
Kind: metadata.Kind,
})
}
func (o *Playlist) GetCommonMetadata() resource.CommonMetadata {
dt := o.DeletionTimestamp
var deletionTimestamp *time.Time
if dt != nil {
deletionTimestamp = &dt.Time
}
// Legacy ExtraFields support
extraFields := make(map[string]any)
if o.Annotations != nil {
extraFields["annotations"] = o.Annotations
}
if o.ManagedFields != nil {
extraFields["managedFields"] = o.ManagedFields
}
if o.OwnerReferences != nil {
extraFields["ownerReferences"] = o.OwnerReferences
}
return resource.CommonMetadata{
UID: string(o.UID),
ResourceVersion: o.ResourceVersion,
Generation: o.Generation,
Labels: o.Labels,
CreationTimestamp: o.CreationTimestamp.Time,
DeletionTimestamp: deletionTimestamp,
Finalizers: o.Finalizers,
UpdateTimestamp: o.GetUpdateTimestamp(),
CreatedBy: o.GetCreatedBy(),
UpdatedBy: o.GetUpdatedBy(),
ExtraFields: extraFields,
}
}
func (o *Playlist) SetCommonMetadata(metadata resource.CommonMetadata) {
o.UID = types.UID(metadata.UID)
o.ResourceVersion = metadata.ResourceVersion
o.Generation = metadata.Generation
o.Labels = metadata.Labels
o.CreationTimestamp = metav1.NewTime(metadata.CreationTimestamp)
if metadata.DeletionTimestamp != nil {
dt := metav1.NewTime(*metadata.DeletionTimestamp)
o.DeletionTimestamp = &dt
} else {
o.DeletionTimestamp = nil
}
o.Finalizers = metadata.Finalizers
if o.Annotations == nil {
o.Annotations = make(map[string]string)
}
if !metadata.UpdateTimestamp.IsZero() {
o.SetUpdateTimestamp(metadata.UpdateTimestamp)
}
if metadata.CreatedBy != "" {
o.SetCreatedBy(metadata.CreatedBy)
}
if metadata.UpdatedBy != "" {
o.SetUpdatedBy(metadata.UpdatedBy)
}
// Legacy support for setting Annotations, ManagedFields, and OwnerReferences via ExtraFields
if metadata.ExtraFields != nil {
if annotations, ok := metadata.ExtraFields["annotations"]; ok {
if cast, ok := annotations.(map[string]string); ok {
o.Annotations = cast
}
}
if managedFields, ok := metadata.ExtraFields["managedFields"]; ok {
if cast, ok := managedFields.([]metav1.ManagedFieldsEntry); ok {
o.ManagedFields = cast
}
}
if ownerReferences, ok := metadata.ExtraFields["ownerReferences"]; ok {
if cast, ok := ownerReferences.([]metav1.OwnerReference); ok {
o.OwnerReferences = cast
}
}
}
}
func (o *Playlist) GetCreatedBy() string {
if o.ObjectMeta.Annotations == nil {
o.ObjectMeta.Annotations = make(map[string]string)
}
return o.ObjectMeta.Annotations["grafana.com/createdBy"]
}
func (o *Playlist) SetCreatedBy(createdBy string) {
if o.ObjectMeta.Annotations == nil {
o.ObjectMeta.Annotations = make(map[string]string)
}
o.ObjectMeta.Annotations["grafana.com/createdBy"] = createdBy
}
func (o *Playlist) GetUpdateTimestamp() time.Time {
if o.ObjectMeta.Annotations == nil {
o.ObjectMeta.Annotations = make(map[string]string)
}
parsed, _ := time.Parse(time.RFC3339, o.ObjectMeta.Annotations["grafana.com/updateTimestamp"])
return parsed
}
func (o *Playlist) SetUpdateTimestamp(updateTimestamp time.Time) {
if o.ObjectMeta.Annotations == nil {
o.ObjectMeta.Annotations = make(map[string]string)
}
o.ObjectMeta.Annotations["grafana.com/updateTimestamp"] = updateTimestamp.Format(time.RFC3339)
}
func (o *Playlist) GetUpdatedBy() string {
if o.ObjectMeta.Annotations == nil {
o.ObjectMeta.Annotations = make(map[string]string)
}
return o.ObjectMeta.Annotations["grafana.com/updatedBy"]
}
func (o *Playlist) SetUpdatedBy(updatedBy string) {
if o.ObjectMeta.Annotations == nil {
o.ObjectMeta.Annotations = make(map[string]string)
}
o.ObjectMeta.Annotations["grafana.com/updatedBy"] = updatedBy
}
func (o *Playlist) Copy() resource.Object {
return resource.CopyObject(o)
}
func (o *Playlist) DeepCopyObject() runtime.Object {
return o.Copy()
}
// Interface compliance compile-time check
var _ resource.Object = &Playlist{}
// +k8s:openapi-gen=true
type PlaylistList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata"`
Items []Playlist `json:"items"`
}
func (o *PlaylistList) DeepCopyObject() runtime.Object {
return o.Copy()
}
func (o *PlaylistList) Copy() resource.ListObject {
cpy := &PlaylistList{
TypeMeta: o.TypeMeta,
Items: make([]Playlist, len(o.Items)),
}
o.ListMeta.DeepCopyInto(&cpy.ListMeta)
for i := 0; i < len(o.Items); i++ {
if item, ok := o.Items[i].Copy().(*Playlist); ok {
cpy.Items[i] = *item
}
}
return cpy
}
func (o *PlaylistList) GetItems() []resource.Object {
items := make([]resource.Object, len(o.Items))
for i := 0; i < len(o.Items); i++ {
items[i] = &o.Items[i]
}
return items
}
func (o *PlaylistList) SetItems(items []resource.Object) {
o.Items = make([]Playlist, len(items))
for i := 0; i < len(items); i++ {
o.Items[i] = *items[i].(*Playlist)
}
}
// Interface compliance compile-time check
var _ resource.ListObject = &PlaylistList{}

View File

@@ -0,0 +1,34 @@
//
// Code generated by grafana-app-sdk. DO NOT EDIT.
//
package v0alpha1
import (
"github.com/grafana/grafana-app-sdk/resource"
)
// schema is unexported to prevent accidental overwrites
var (
schemaPlaylist = resource.NewSimpleSchema("playlist.grafana.app", "v0alpha1", &Playlist{}, &PlaylistList{}, resource.WithKind("Playlist"),
resource.WithPlural("playlists"), resource.WithScope(resource.NamespacedScope))
kindPlaylist = resource.Kind{
Schema: schemaPlaylist,
Codecs: map[resource.KindEncoding]resource.Codec{
resource.KindEncodingJSON: &PlaylistJSONCodec{},
},
}
)
// Kind returns a resource.Kind for this Schema with a JSON codec
func PlaylistKind() resource.Kind {
return kindPlaylist
}
// Schema returns a resource.SimpleSchema representation of Playlist
func PlaylistSchema() *resource.SimpleSchema {
return schemaPlaylist
}
// Interface compliance checks
var _ resource.Schema = kindPlaylist

View File

@@ -0,0 +1,36 @@
package v0alpha1
// Defines values for PlaylistItemType.
const (
PlaylistItemTypeDashboardById PlaylistItemType = "dashboard_by_id"
PlaylistItemTypeDashboardByTag PlaylistItemType = "dashboard_by_tag"
PlaylistItemTypeDashboardByUid PlaylistItemType = "dashboard_by_uid"
)
// PlaylistItem defines model for PlaylistItem.
// +k8s:openapi-gen=true
type PlaylistItem struct {
// type of the item.
Type PlaylistItemType `json:"type"`
// Value depends on type and describes the playlist item.
// - dashboard_by_id: The value is an internal numerical identifier set by Grafana. This
// is not portable as the numerical identifier is non-deterministic between different instances.
// Will be replaced by dashboard_by_uid in the future. (deprecated)
// - dashboard_by_tag: The value is a tag which is set on any number of dashboards. All
// dashboards behind the tag will be added to the playlist.
// - dashboard_by_uid: The value is the dashboard UID
Value string `json:"value"`
}
// PlaylistItemType type of the item.
// +k8s:openapi-gen=true
type PlaylistItemType string
// PlaylistSpec defines model for PlaylistSpec.
// +k8s:openapi-gen=true
type PlaylistSpec struct {
Interval string `json:"interval"`
Items []PlaylistItem `json:"items"`
Title string `json:"title"`
}

View File

@@ -0,0 +1,70 @@
package v0alpha1
// Defines values for PlaylistOperatorStateState.
const (
PlaylistOperatorStateStateFailed PlaylistOperatorStateState = "failed"
PlaylistOperatorStateStateInProgress PlaylistOperatorStateState = "in_progress"
PlaylistOperatorStateStateSuccess PlaylistOperatorStateState = "success"
)
// Defines values for PlayliststatusOperatorStateState.
const (
PlayliststatusOperatorStateStateFailed PlayliststatusOperatorStateState = "failed"
PlayliststatusOperatorStateStateInProgress PlayliststatusOperatorStateState = "in_progress"
PlayliststatusOperatorStateStateSuccess PlayliststatusOperatorStateState = "success"
)
// PlaylistOperatorState defines model for PlaylistOperatorState.
// +k8s:openapi-gen=true
type PlaylistOperatorState struct {
// descriptiveState is an optional more descriptive state field which has no requirements on format
DescriptiveState *string `json:"descriptiveState,omitempty"`
// details contains any extra information that is operator-specific
Details map[string]interface{} `json:"details,omitempty"`
// lastEvaluation is the ResourceVersion last evaluated
LastEvaluation string `json:"lastEvaluation"`
// state describes the state of the lastEvaluation.
// It is limited to three possible states for machine evaluation.
State PlaylistOperatorStateState `json:"state"`
}
// PlaylistOperatorStateState state describes the state of the lastEvaluation.
// It is limited to three possible states for machine evaluation.
// +k8s:openapi-gen=true
type PlaylistOperatorStateState string
// PlaylistStatus defines model for PlaylistStatus.
// +k8s:openapi-gen=true
type PlaylistStatus struct {
// additionalFields is reserved for future use
AdditionalFields map[string]interface{} `json:"additionalFields,omitempty"`
// operatorStates is a map of operator ID to operator state evaluations.
// Any operator which consumes this kind SHOULD add its state evaluation information to this field.
OperatorStates map[string]PlayliststatusOperatorState `json:"operatorStates,omitempty"`
}
// PlayliststatusOperatorState defines model for Playliststatus.#OperatorState.
// +k8s:openapi-gen=true
type PlayliststatusOperatorState struct {
// descriptiveState is an optional more descriptive state field which has no requirements on format
DescriptiveState *string `json:"descriptiveState,omitempty"`
// details contains any extra information that is operator-specific
Details map[string]interface{} `json:"details,omitempty"`
// lastEvaluation is the ResourceVersion last evaluated
LastEvaluation string `json:"lastEvaluation"`
// state describes the state of the lastEvaluation.
// It is limited to three possible states for machine evaluation.
State PlayliststatusOperatorStateState `json:"state"`
}
// PlayliststatusOperatorStateState state describes the state of the lastEvaluation.
// It is limited to three possible states for machine evaluation.
// +k8s:openapi-gen=true
type PlayliststatusOperatorStateState string

View File

@@ -0,0 +1,340 @@
//go:build !ignore_autogenerated
// +build !ignore_autogenerated
// Code generated by grafana-app-sdk. DO NOT EDIT.
package v0alpha1
import (
common "k8s.io/kube-openapi/pkg/common"
spec "k8s.io/kube-openapi/pkg/validation/spec"
)
func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition {
return map[string]common.OpenAPIDefinition{
"github.com/grafana/grafana/apps/playlist/apis/playlist/v0alpha1.Playlist": schema_playlist_apis_playlist_v0alpha1_Playlist(ref),
"github.com/grafana/grafana/apps/playlist/apis/playlist/v0alpha1.PlaylistItem": schema_playlist_apis_playlist_v0alpha1_PlaylistItem(ref),
"github.com/grafana/grafana/apps/playlist/apis/playlist/v0alpha1.PlaylistList": schema_playlist_apis_playlist_v0alpha1_PlaylistList(ref),
"github.com/grafana/grafana/apps/playlist/apis/playlist/v0alpha1.PlaylistOperatorState": schema_playlist_apis_playlist_v0alpha1_PlaylistOperatorState(ref),
"github.com/grafana/grafana/apps/playlist/apis/playlist/v0alpha1.PlaylistSpec": schema_playlist_apis_playlist_v0alpha1_PlaylistSpec(ref),
"github.com/grafana/grafana/apps/playlist/apis/playlist/v0alpha1.PlaylistStatus": schema_playlist_apis_playlist_v0alpha1_PlaylistStatus(ref),
"github.com/grafana/grafana/apps/playlist/apis/playlist/v0alpha1.PlayliststatusOperatorState": schema_playlist_apis_playlist_v0alpha1_PlayliststatusOperatorState(ref),
}
}
func schema_playlist_apis_playlist_v0alpha1_Playlist(ref common.ReferenceCallback) common.OpenAPIDefinition {
return common.OpenAPIDefinition{
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
Type: []string{"object"},
Properties: map[string]spec.Schema{
"kind": {
SchemaProps: spec.SchemaProps{
Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
Type: []string{"string"},
Format: "",
},
},
"apiVersion": {
SchemaProps: spec.SchemaProps{
Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
Type: []string{"string"},
Format: "",
},
},
"metadata": {
SchemaProps: spec.SchemaProps{
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
},
},
"spec": {
SchemaProps: spec.SchemaProps{
Default: map[string]interface{}{},
Ref: ref("github.com/grafana/grafana/apps/playlist/apis/playlist/v0alpha1.PlaylistSpec"),
},
},
"status": {
SchemaProps: spec.SchemaProps{
Default: map[string]interface{}{},
Ref: ref("github.com/grafana/grafana/apps/playlist/apis/playlist/v0alpha1.PlaylistStatus"),
},
},
},
Required: []string{"metadata", "spec", "status"},
},
},
Dependencies: []string{
"github.com/grafana/grafana/apps/playlist/apis/playlist/v0alpha1.PlaylistSpec", "github.com/grafana/grafana/apps/playlist/apis/playlist/v0alpha1.PlaylistStatus", "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"},
}
}
func schema_playlist_apis_playlist_v0alpha1_PlaylistItem(ref common.ReferenceCallback) common.OpenAPIDefinition {
return common.OpenAPIDefinition{
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
Description: "PlaylistItem defines model for PlaylistItem.",
Type: []string{"object"},
Properties: map[string]spec.Schema{
"type": {
SchemaProps: spec.SchemaProps{
Description: "type of the item.",
Default: "",
Type: []string{"string"},
Format: "",
},
},
"value": {
SchemaProps: spec.SchemaProps{
Description: "Value depends on type and describes the playlist item.\n - dashboard_by_id: The value is an internal numerical identifier set by Grafana. This\n is not portable as the numerical identifier is non-deterministic between different instances.\n Will be replaced by dashboard_by_uid in the future. (deprecated)\n - dashboard_by_tag: The value is a tag which is set on any number of dashboards. All\n dashboards behind the tag will be added to the playlist.\n - dashboard_by_uid: The value is the dashboard UID",
Default: "",
Type: []string{"string"},
Format: "",
},
},
},
Required: []string{"type", "value"},
},
},
}
}
func schema_playlist_apis_playlist_v0alpha1_PlaylistList(ref common.ReferenceCallback) common.OpenAPIDefinition {
return common.OpenAPIDefinition{
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
Type: []string{"object"},
Properties: map[string]spec.Schema{
"kind": {
SchemaProps: spec.SchemaProps{
Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
Type: []string{"string"},
Format: "",
},
},
"apiVersion": {
SchemaProps: spec.SchemaProps{
Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
Type: []string{"string"},
Format: "",
},
},
"metadata": {
SchemaProps: spec.SchemaProps{
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
},
},
"items": {
SchemaProps: spec.SchemaProps{
Type: []string{"array"},
Items: &spec.SchemaOrArray{
Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{
Default: map[string]interface{}{},
Ref: ref("github.com/grafana/grafana/apps/playlist/apis/playlist/v0alpha1.Playlist"),
},
},
},
},
},
},
Required: []string{"metadata", "items"},
},
},
Dependencies: []string{
"github.com/grafana/grafana/apps/playlist/apis/playlist/v0alpha1.Playlist", "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"},
}
}
func schema_playlist_apis_playlist_v0alpha1_PlaylistOperatorState(ref common.ReferenceCallback) common.OpenAPIDefinition {
return common.OpenAPIDefinition{
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
Description: "PlaylistOperatorState defines model for PlaylistOperatorState.",
Type: []string{"object"},
Properties: map[string]spec.Schema{
"descriptiveState": {
SchemaProps: spec.SchemaProps{
Description: "descriptiveState is an optional more descriptive state field which has no requirements on format",
Type: []string{"string"},
Format: "",
},
},
"details": {
SchemaProps: spec.SchemaProps{
Description: "details contains any extra information that is operator-specific",
Type: []string{"object"},
AdditionalProperties: &spec.SchemaOrBool{
Allows: true,
Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{
Type: []string{"object"},
Format: "",
},
},
},
},
},
"lastEvaluation": {
SchemaProps: spec.SchemaProps{
Description: "lastEvaluation is the ResourceVersion last evaluated",
Default: "",
Type: []string{"string"},
Format: "",
},
},
"state": {
SchemaProps: spec.SchemaProps{
Description: "state describes the state of the lastEvaluation. It is limited to three possible states for machine evaluation.",
Default: "",
Type: []string{"string"},
Format: "",
},
},
},
Required: []string{"lastEvaluation", "state"},
},
},
}
}
func schema_playlist_apis_playlist_v0alpha1_PlaylistSpec(ref common.ReferenceCallback) common.OpenAPIDefinition {
return common.OpenAPIDefinition{
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
Description: "PlaylistSpec defines model for PlaylistSpec.",
Type: []string{"object"},
Properties: map[string]spec.Schema{
"interval": {
SchemaProps: spec.SchemaProps{
Default: "",
Type: []string{"string"},
Format: "",
},
},
"items": {
SchemaProps: spec.SchemaProps{
Type: []string{"array"},
Items: &spec.SchemaOrArray{
Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{
Default: map[string]interface{}{},
Ref: ref("github.com/grafana/grafana/apps/playlist/apis/playlist/v0alpha1.PlaylistItem"),
},
},
},
},
},
"title": {
SchemaProps: spec.SchemaProps{
Default: "",
Type: []string{"string"},
Format: "",
},
},
},
Required: []string{"interval", "items", "title"},
},
},
Dependencies: []string{
"github.com/grafana/grafana/apps/playlist/apis/playlist/v0alpha1.PlaylistItem"},
}
}
func schema_playlist_apis_playlist_v0alpha1_PlaylistStatus(ref common.ReferenceCallback) common.OpenAPIDefinition {
return common.OpenAPIDefinition{
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
Description: "PlaylistStatus defines model for PlaylistStatus.",
Type: []string{"object"},
Properties: map[string]spec.Schema{
"additionalFields": {
SchemaProps: spec.SchemaProps{
Description: "additionalFields is reserved for future use",
Type: []string{"object"},
AdditionalProperties: &spec.SchemaOrBool{
Allows: true,
Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{
Type: []string{"object"},
Format: "",
},
},
},
},
},
"operatorStates": {
SchemaProps: spec.SchemaProps{
Description: "operatorStates is a map of operator ID to operator state evaluations. Any operator which consumes this kind SHOULD add its state evaluation information to this field.",
Type: []string{"object"},
AdditionalProperties: &spec.SchemaOrBool{
Allows: true,
Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{
Default: map[string]interface{}{},
Ref: ref("github.com/grafana/grafana/apps/playlist/apis/playlist/v0alpha1.PlayliststatusOperatorState"),
},
},
},
},
},
},
},
},
Dependencies: []string{
"github.com/grafana/grafana/apps/playlist/apis/playlist/v0alpha1.PlayliststatusOperatorState"},
}
}
func schema_playlist_apis_playlist_v0alpha1_PlayliststatusOperatorState(ref common.ReferenceCallback) common.OpenAPIDefinition {
return common.OpenAPIDefinition{
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
Description: "PlayliststatusOperatorState defines model for Playliststatus.#OperatorState.",
Type: []string{"object"},
Properties: map[string]spec.Schema{
"descriptiveState": {
SchemaProps: spec.SchemaProps{
Description: "descriptiveState is an optional more descriptive state field which has no requirements on format",
Type: []string{"string"},
Format: "",
},
},
"details": {
SchemaProps: spec.SchemaProps{
Description: "details contains any extra information that is operator-specific",
Type: []string{"object"},
AdditionalProperties: &spec.SchemaOrBool{
Allows: true,
Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{
Type: []string{"object"},
Format: "",
},
},
},
},
},
"lastEvaluation": {
SchemaProps: spec.SchemaProps{
Description: "lastEvaluation is the ResourceVersion last evaluated",
Default: "",
Type: []string{"string"},
Format: "",
},
},
"state": {
SchemaProps: spec.SchemaProps{
Description: "state describes the state of the lastEvaluation. It is limited to three possible states for machine evaluation.",
Default: "",
Type: []string{"string"},
Format: "",
},
},
},
Required: []string{"lastEvaluation", "state"},
},
},
}
}

38
apps/playlist/go.mod Normal file
View File

@@ -0,0 +1,38 @@
module github.com/grafana/grafana/apps/playlist
go 1.23.1
require (
github.com/grafana/grafana-app-sdk v0.19.0
k8s.io/apimachinery v0.31.1
k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340
)
require (
github.com/emicklei/go-restful/v3 v3.11.0 // indirect
github.com/fxamacker/cbor/v2 v2.7.0 // indirect
github.com/go-logr/logr v1.4.2 // indirect
github.com/go-openapi/jsonpointer v0.21.0 // indirect
github.com/go-openapi/jsonreference v0.21.0 // indirect
github.com/go-openapi/swag v0.23.0 // indirect
github.com/gogo/protobuf v1.3.2 // indirect
github.com/golang/protobuf v1.5.4 // indirect
github.com/google/gnostic-models v0.6.8 // indirect
github.com/google/gofuzz v1.2.0 // indirect
github.com/josharian/intern v1.0.0 // indirect
github.com/json-iterator/go v1.1.12 // indirect
github.com/mailru/easyjson v0.7.7 // indirect
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
github.com/modern-go/reflect2 v1.0.2 // indirect
github.com/x448/float16 v0.8.4 // indirect
golang.org/x/net v0.29.0 // indirect
golang.org/x/text v0.18.0 // indirect
google.golang.org/protobuf v1.34.2 // indirect
gopkg.in/inf.v0 v0.9.1 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
k8s.io/klog/v2 v2.130.1 // indirect
k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 // indirect
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect
sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect
)

117
apps/playlist/go.sum Normal file
View File

@@ -0,0 +1,117 @@
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM=
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/emicklei/go-restful/v3 v3.11.0 h1:rAQeMHw1c7zTmncogyy8VvRZwtkmkZ4FxERmMY4rD+g=
github.com/emicklei/go-restful/v3 v3.11.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc=
github.com/fxamacker/cbor/v2 v2.7.0 h1:iM5WgngdRBanHcxugY4JySA0nk1wZorNOpTgCMedv5E=
github.com/fxamacker/cbor/v2 v2.7.0/go.mod h1:pxXPTn3joSm21Gbwsv0w9OSA2y1HFR9qXEeXQVeNoDQ=
github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY=
github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
github.com/go-openapi/jsonpointer v0.21.0 h1:YgdVicSA9vH5RiHs9TZW5oyafXZFc6+2Vc1rr/O9oNQ=
github.com/go-openapi/jsonpointer v0.21.0/go.mod h1:IUyH9l/+uyhIYQ/PXVA41Rexl+kOkAPDdXEYns6fzUY=
github.com/go-openapi/jsonreference v0.21.0 h1:Rs+Y7hSXT83Jacb7kFyjn4ijOuVGSvOdF2+tg1TRrwQ=
github.com/go-openapi/jsonreference v0.21.0/go.mod h1:LmZmgsrTkVg9LG4EaHeY8cBDslNPMo06cago5JNLkm4=
github.com/go-openapi/swag v0.23.0 h1:vsEVJDUo2hPJ2tu0/Xc+4noaxyEffXNIs3cOULZ+GrE=
github.com/go-openapi/swag v0.23.0/go.mod h1:esZ8ITTYEsH1V2trKHjAN8Ai7xHb8RV+YSZ577vPjgQ=
github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q=
github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q=
github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek=
github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps=
github.com/google/gnostic-models v0.6.8 h1:yo/ABAfM5IMRsS1VnXjTBvUb61tFIHozhlYvRgGre9I=
github.com/google/gnostic-models v0.6.8/go.mod h1:5n7qKqH0f5wFt+aWF8CW6pZLLNOfYuF5OpfBSENuI8U=
github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0=
github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
github.com/grafana/grafana-app-sdk v0.19.0 h1:RY9HvCFR+4WUy81n53wejZnof9qE6++pd6r24d6+JYs=
github.com/grafana/grafana-app-sdk v0.19.0/go.mod h1:y0BgzYxc+a7CwOqkwUhN9zXd5cgZJjd2zAbgHEd/xzo=
github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY=
github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y=
github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM=
github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo=
github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8=
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0=
github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc=
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg=
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M=
github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U=
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8=
github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4=
github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA=
github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg=
github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
github.com/x448/float16 v0.8.4 h1:qLwI1I70+NjRFUR3zs1JPUCgaCXSh3SW62uAKT1mSBM=
github.com/x448/float16 v0.8.4/go.mod h1:14CWIYCyZA/cWjXOioeEpHeN/83MdbZDRQHoFcYsOfg=
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
golang.org/x/net v0.29.0 h1:5ORfpBpCs4HzDYoodCDBbwHzdR5UrLBZ3sOnUJmFoHo=
golang.org/x/net v0.29.0/go.mod h1:gLkgy8jTGERgjzMic6DS9+SP0ajcu6Xu3Orq/SpETg0=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.18.0 h1:XvMDiNzPAl0jr17s6W9lcaIhGUfUORdGCNsuLmPG224=
golang.org/x/text v0.18.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg=
google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc=
gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw=
gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
k8s.io/apimachinery v0.31.1 h1:mhcUBbj7KUjaVhyXILglcVjuS4nYXiwC+KKFBgIVy7U=
k8s.io/apimachinery v0.31.1/go.mod h1:rsPdaZJfTfLsNJSQzNHQvYoTmxhoOEofxtOsF3rtsMo=
k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk=
k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE=
k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 h1:BZqlfIlq5YbRMFko6/PM7FjZpUb45WallggurYhKGag=
k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340/go.mod h1:yD4MZYeKMBwQKVht279WycxKyM84kkAx2DPrTXaeb98=
k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 h1:pUdcCO1Lk/tbT5ztQWOBi5HBgbBP1J8+AsQnQCKsi8A=
k8s.io/utils v0.0.0-20240711033017-18e509b52bc8/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0=
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo=
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0=
sigs.k8s.io/structured-merge-diff/v4 v4.4.1 h1:150L+0vs/8DA78h1u02ooW1/fFq/Lwr+sGiqlzvrtq4=
sigs.k8s.io/structured-merge-diff/v4 v4.4.1/go.mod h1:N8hJocpFajUSSeSJ9bOZ77VzejKZaXsTtZo4/u7Io08=
sigs.k8s.io/yaml v1.4.0 h1:Mk1wCc2gy/F0THH0TAp1QYyJNzRm2KCLy3o5ASXVI5E=
sigs.k8s.io/yaml v1.4.0/go.mod h1:Ejl7/uTz7PSA4eKMyQCUTnhZYNmLIl+5c2lQPGR2BPY=

View File

@@ -0,0 +1 @@
module: "github.com/grafana/grafana/apps/playlist/kinds"

View File

@@ -0,0 +1,39 @@
package core
externalName: {
kind: "Playlist"
group: "playlist"
apiResource: {
groupOverride: "playlist.grafana.app"
}
codegen: {
frontend: false
backend: true
}
pluralName: "Playlists"
current: "v0alpha1"
versions: {
"v0alpha1": {
schema: {
#Item: {
// type of the item.
type: "dashboard_by_tag" | "dashboard_by_uid" | "dashboard_by_id" @cuetsy(kind="enum")
// Value depends on type and describes the playlist item.
// - dashboard_by_id: The value is an internal numerical identifier set by Grafana. This
// is not portable as the numerical identifier is non-deterministic between different instances.
// Will be replaced by dashboard_by_uid in the future. (deprecated)
// - dashboard_by_tag: The value is a tag which is set on any number of dashboards. All
// dashboards behind the tag will be added to the playlist.
// - dashboard_by_uid: The value is the dashboard UID
value: string
}
spec: {
title: string
interval: string
items: [...#Item]
}
}
}
}
}

View File

@@ -582,6 +582,16 @@ oauth_auto_login = false
# OAuth state max age cookie duration in seconds. Defaults to 600 seconds.
oauth_state_cookie_max_age = 600
# Sets a custom oAuth error message. This is useful if you need to point the users to a specific location for support.
oauth_login_error_message = oauth.login.error
# Minimum wait time in milliseconds for the server lock retry mechanism.
# The server lock retry mechanism is used to prevent multiple Grafana instances from
# simultaneously refreshing OAuth tokens. This mechanism waits at least this amount
# of time before retrying to acquire the server lock. There are 5 retries in total.
# The wait time between retries is calculated as random(n, n + 500)
oauth_refresh_token_server_lock_min_wait_ms = 1000
# limit of api_key seconds to live before expiration
api_key_max_seconds_to_live = -1
@@ -608,6 +618,10 @@ id_response_header_prefix = X-Grafana
# The header value will encode the namespace ("user:<id>", "api-key:<id>", "service-account:<id>")
id_response_header_namespaces = user api-key service-account
# Enables the use of managed service accounts for plugin authentication
# This feature currently **only supports single-organization deployments**
managed_service_accounts_enabled = false
#################################### SSO Settings ###########################
[sso_settings]
# interval for reloading the SSO Settings from the database
@@ -1335,6 +1349,11 @@ notification_log_retention = 5d
# Duration for which a resolved alert state transition will continue to be sent to the Alertmanager.
resolved_alert_retention = 15m
# Defines the limit of how many alert rule versions
# should be stored in the database for each alert rule in an organization including the current one.
# 0 value means no limit
rule_version_record_limit = 0
[unified_alerting.screenshots]
# Enable screenshots in notifications. You must have either installed the Grafana image rendering
# plugin, or set up Grafana to use a remote rendering service.
@@ -1437,6 +1456,9 @@ max_age =
max_annotations_to_keep =
[recording_rules]
# Enable recording rules. You must provide write credentials below.
enabled = false
# Target URL (including write path) for recording rules.
url =
@@ -1546,8 +1568,8 @@ expire_time = 7
#################################### Internal Grafana Metrics ############
# Metrics available at HTTP URL /metrics and /metrics/plugins/:pluginId
[metrics]
enabled = true
interval_seconds = 10
enabled = true
interval_seconds = 10
# Disable total stats (stat_totals_*) metrics to be generated
disable_total_stats = false
# The interval at which the total stats collector will update the stats. Default is 1800 seconds.
@@ -1725,6 +1747,12 @@ install_token =
hide_angular_deprecation =
# Comma separated list of plugin ids for which environment variables should be forwarded. Used only when feature flag pluginsSkipHostEnvVars is enabled.
forward_host_env_vars =
# Comma separated list of plugin ids to install as part of the startup process.
preinstall = grafana-lokiexplore-app
# Controls whether preinstall plugins asynchronously (in the background) or synchronously (blocking). Useful when preinstalled plugins are used with provisioning.
preinstall_async = true
# Disables preinstall feature. It has the same effect as setting preinstall to an empty list.
preinstall_disabled = false
#################################### Grafana Live ##########################################
[live]
@@ -1982,3 +2010,13 @@ feedback_url = https://docs.google.com/forms/d/e/1FAIpQLSeEE33vhbSpR8A8S1A1ocZ1B
# How frequently should the frontend UI poll for changes while resources are migrating
frontend_poll_interval = 2s
################################## Frontend development configuration ###################################
# Warning! Any settings placed in this section will be available on `process.env.frontend_dev_{foo}` within frontend code
# Any values placed here may be accessible to the UI. Do not place sensitive information here.
[frontend_dev]
# Should UI tests fail when console log/warn/erroring?
# Does not affect the result when running on CI - only for allowing devs to choose this behaviour locally
fail_tests_on_console = true
# Whether or not to enable the MSW mock API, which intercepts requests and returns mock data
# Should only be used for local development or demo purposes
mock_api = false

View File

@@ -583,9 +583,19 @@
# Deprecated, use auto_login option for specific provider instead.
;oauth_auto_login = false
# Sets a custom oAuth error message. This is useful if you need to point the users to a specific location for support.
;oauth_login_error_message = oauth.login.error
# OAuth state max age cookie duration in seconds. Defaults to 600 seconds.
;oauth_state_cookie_max_age = 600
# Minimum wait time in milliseconds for the server lock retry mechanism.
# The server lock retry mechanism is used to prevent multiple Grafana instances from
# simultaneously refreshing OAuth tokens. This mechanism waits at least this amount
# of time before retrying to acquire the server lock. There are 5 retries in total.
# The wait time between retries is calculated as random(n, n + 500)
; oauth_refresh_token_server_lock_min_wait_ms = 1000
# limit of api_key seconds to live before expiration
;api_key_max_seconds_to_live = -1
@@ -612,6 +622,10 @@
# The header value will encode the namespace ("user:<id>", "api-key:<id>", "service-account:<id>")
;id_response_header_namespaces = user api-key service-account
# Enables the use of managed service accounts for plugin authentication
# This feature currently **only supports single-organization deployments**
; managed_service_accounts_enabled = false
#################################### Anonymous Auth ######################
[auth.anonymous]
# enable anonymous access
@@ -1324,6 +1338,11 @@
# Duration for which a resolved alert state transition will continue to be sent to the Alertmanager.
;resolved_alert_retention = 15m
# Defines the limit of how many alert rule versions
# should be stored in the database for each alert rule in an organization including the current one.
# 0 value means no limit
;rule_version_record_limit= 0
[unified_alerting.screenshots]
# Enable screenshots in notifications. You must have either installed the Grafana image rendering
# plugin, or set up Grafana to use a remote rendering service.
@@ -1431,6 +1450,9 @@ max_annotations_to_keep =
#################################### Recording Rules #####################
[recording_rules]
# Enable recording rules. You must provide write credentials below.
enabled = false
# Target URL (including write path) for recording rules.
url =
@@ -1914,3 +1936,11 @@ timeout = 30s
;feedback_url = ""
# How frequently should the frontend UI poll for changes while resources are migrating
;frontend_poll_interval = 2s
################################## Frontend development configuration ###################################
# Warning! Any settings placed in this section will be available on `process.env.frontend_dev_{foo}` within frontend code
# Any values placed here may be accessible to the UI. Do not place sensitive information here.
[frontend_dev]
# Should UI tests fail when console log/warn/erroring?
# Does not affect the result when running on CI - only for allowing devs to choose this behaviour locally
; fail_tests_on_console = true

View File

@@ -270,17 +270,17 @@ In case there is an uncertainty around the prioritization of an issue, please as
1. If applicable, label the issue `priority/support-subscription`.
1. Add the issue to the next upcoming patch or major/minor stable release milestone. Ask maintainers for help if unsure if it's a patch or not. Create a new milestone if there are none.
1. Make sure to add the issue to a suitable backlog of a GitHub project and prioritize it or assign someone to work on it now or very soon.
1. Consider requesting [help from the community](#5-requesting-help-from-the-community), even though it may be problematic given a short amount of time until it should be released.
1. Consider requesting [help from the community](#5-request-help-from-the-community), even though it may be problematic given a short amount of time until it should be released.
**Important long-term**
1. Label the issue `priority/important-longterm`.
1. Consider requesting [help from the community](#5-requesting-help-from-the-community).
1. Consider requesting [help from the community](#5-request-help-from-the-community).
**Nice to have**
1. Label the issue `priority/nice-to-have`.
1. Consider requesting [help from the community](#5-requesting-help-from-the-community).
1. Consider requesting [help from the community](#5-request-help-from-the-community).
**Not critical, but unsure?**

View File

@@ -25,4 +25,4 @@ If you want to make or review large changes to the backend, be sure to habituall
## Guidelines for dependency management
If you work with a dependency that requires an upgrade, refer to [Upgrading dependencies](/contribute/backend/upgrading-dependencies.md).
If you work with a dependency that requires an upgrade, refer to [Upgrade dependencies](/contribute/backend/upgrade-dependencies.md).

View File

@@ -18,7 +18,7 @@ Grafana uses the [XORM](https://xorm.io) framework for persisting objects to the
> **Deprecated:** We are deprecating `sqlstore` handlers in favor of using the `SQLStore` object directly in each service. Since most services still use the `sqlstore` handlers, we still want to explain how they work.
The `sqlstore` package allows you to register [command handlers](communication.md#handle-commands) that either store or retrieve objects from the database. The `sqlstore` handlers are similar to services:
The `sqlstore` package allows you to register [command handlers](communication.md#commands-and-queries) that either store or retrieve objects from the database. The `sqlstore` handlers are similar to services:
- [Services](services.md) are command handlers that _contain business logic_.
- `sqlstore` handlers are command handlers that _access the database_.
@@ -30,7 +30,7 @@ The `sqlstore` package allows you to register [command handlers](communication.m
To register a handler:
- Create a new file, `myrepo.go`, in the `sqlstore` package.
- Create a [command handler](communication.md#handle-commands).
- Create a [command handler](communication.md#commands-and-queries).
- Register the handler in the `init` function:
```go
@@ -60,7 +60,7 @@ type MyService struct {
}
```
You can now make SQL queries in any of your [command handlers](communication.md#handle-commands) or [event listeners](communication.md#subscribe-to-an-event):
You can now make SQL queries in any of your [command handlers](communication.md#commands-and-queries) or [event listeners](communication.md#subscribe-to-an-event):
```go
func (s *MyService) DeleteDashboard(ctx context.Context, cmd *models.DeleteDashboardCommand) error {
@@ -107,7 +107,7 @@ To add a migration:
### Implement `DatabaseMigrator`
During initialization, SQL store queries the service registry, and runs migrations for every service that implements the [DatabaseMigrator](https://github.com/grafana/grafana/blob/44c2007498c76c2dbb48e8366b4af410f1ee1b98/pkg/registry/registry.go#L101-L106) interface.
During initialization, SQL store queries the service registry, and runs migrations for every service that implements the [DatabaseMigrator](https://github.com/grafana/grafana/blob/d27c3822f28e5f26199b4817892d6d24a7a26567/pkg/registry/registry.go#L46-L50) interface.
To add a migration:

View File

@@ -55,7 +55,7 @@ When should you use each log level?
Use a contextual logger to include additional key/value pairs attached to `context.Context`. For example, a `traceID`, used to allow correlating logs with traces, correlate logs with a common identifier, either or both.
You must [Enable tracing in Grafana](#2-enable-tracing-in-grafana) to get a `traceID`.
You must [Enable tracing in Grafana](#enable-tracing-in-grafana) to get a `traceID`.
For example:
@@ -156,7 +156,7 @@ A distributed trace is data that tracks an application request as it flows throu
### Usage
Grafana uses [OpenTelemetry](https://opentelemetry.io/) for distributed tracing. There's an interface `Tracer` in the `pkg/infra/tracing` package that implements the [OpenTelemetry Tracer interface](go.opentelemetry.io/otel/trace), which you can use to create traces and spans. To access `Tracer` you need to get it injected as a dependency of your service. Refer to [Services](services.md) for more details. For more information, you may also refer to [The OpenTelemetry documentation](https://opentelemetry.io/docs/instrumentation/go/manual/).
Grafana uses [OpenTelemetry](https://opentelemetry.io/) for distributed tracing. There's an interface `Tracer` in the `pkg/infra/tracing` package that implements the [OpenTelemetry Tracer interface](https://pkg.go.dev/go.opentelemetry.io/otel/trace), which you can use to create traces and spans. To access `Tracer` you need to get it injected as a dependency of your service. Refer to [Services](services.md) for more details. For more information, you may also refer to [The OpenTelemetry documentation](https://opentelemetry.io/docs/instrumentation/go/manual/).
For example:
@@ -269,7 +269,7 @@ attribute.Key("org_id").Int64(proxy.ctx.SignedInUser.OrgID)
make devenv sources=jaeger
```
1. Enable tracing in Grafana
1. Enable tracing in Grafana<a name="enable-tracing-in-grafana"></a>
To enable tracing in Grafana, you must set the address in your `config.ini` file:

View File

@@ -121,7 +121,7 @@ For an example of the `IsDisabled` method and custom initialization code when th
## Run Wire (generate code)
Running `make run` calls `make gen-go` on the first run. The `gen-go` in turn calls the Wire binary and generates the code in [`wire_gen.go`](/pkg/server/wire_gen.go) and [`wire_gen.go`](/pkg/cmd/grafana-cli/runner/wire_gen.go). The Wire binary is installed using [`bingo`](https://github.com/bwplotka/bingo) which downloads and installs all the tools needed, including the Wire binary at the specified version.
Running `make run` calls `make gen-go` on the first run. The `gen-go` in turn calls the Wire binary and generates the code in [`wire_gen.go`](/pkg/server/wire_gen.go). The Wire binary is installed using [`bingo`](https://github.com/bwplotka/bingo) which downloads and installs all the tools needed, including the Wire binary at the specified version.
## OSS vs. Enterprise

View File

@@ -2,16 +2,14 @@
<!-- Keep terms in alphabetical order: -->
This document defines technical terms used in Grafana.
This glossary defines technical terms used in Grafana.
## TLS/SSL
The acronyms [TLS](https://en.wikipedia.org/wiki/Transport_Layer_Security) (Transport Layer Security) and
[SSL](https://en.wikipedia.org/wiki/SSL) (Secure Socket Layer) are both used to describe the HTTPS security layer,
and are in practice synonymous. However, TLS is considered the current name for the technology, and SSL is considered
[SSL](https://en.wikipedia.org/wiki/SSL) (Secure Socket Layer) are both used to describe the HTTPS security layer.
In practice, they are synonymous. However, TLS is considered the current name for the technology, and SSL is considered
[deprecated](https://tools.ietf.org/html/rfc7568).
As such, while both terms are in use (also in our codebase) and are indeed interchangeable, TLS is the preferred term.
That said however, we have at Grafana Labs decided to use both acronyms in combination when referring to this type of
technology, i.e. _TLS/SSL_. This is in order to not confuse those who may not be aware of them being synonymous,
and SSL still being so prevalent in common discourse.
As such, while we use both terms in our codebase and documentation, we generally prefer TLS.
However, we use both acronyms in combination when referring to this type of technology, that is, _TLS/SSL_. We do this because we don't want to confuse readers who may not be aware of them being synonymous, and SSL is still prevalent in common discourse.

View File

@@ -30,7 +30,7 @@ The pull request title should be formatted according to `<Area>: <Summary>` (Bot
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 the [changelog](#include-in-changelog-and-release-notes).
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 the [changelog](#what-to-include-in-changelog-and-release-notes).
**Example:**
@@ -40,7 +40,7 @@ See [formatting guidelines](create-pull-request.md#formatting-guidelines) for mo
### Assign a milestone (automated)
The Grafana release process uses a bot to automatically assign pull requests to a milestone to make it easier for release managers to track changes. For example, [generating changelog (release note)](#include-in-changelog-and-release-notes) must be in a milestone.
The Grafana release process uses a bot to automatically assign pull requests to a milestone to make it easier for release managers to track changes. For example, [generating changelog (release note)](#what-to-include-in-changelog-and-release-notes) must be in a milestone.
That being said, _you don't have to assign a milestone manually_ to a pull request. Instead, when it is merged and closed, a bot will then look for the most appropriate milestone and assign it to the pull request.
@@ -104,7 +104,7 @@ In case the pull request introduces a deprecation you should document this. Labe
<Deprecation description>
```
**Breaking changes:**
**Breaking changes:**<a name="breaking-changes"></a>
In case the pull request introduces a breaking change you should document this. Label the pull request with `add to changelog` and `breaking change` and use the following template at the end of the pull request description describing the breaking change:

View File

@@ -1,16 +1,18 @@
# end-to-end tests for plugins
# End-to-end tests for plugins
When end-to-end testing Grafana plugins, it's recommended to use the [`@grafana/plugin-e2e`](https://www.npmjs.com/package/@grafana/plugin-e2e?activeTab=readme) testing tool. `@grafana/plugin-e2e` extends [`@playwright/test`](https://playwright.dev/) capabilities with relevant fixtures, models, and expect matchers; enabling comprehensive end-to-end testing of Grafana plugins across multiple versions of Grafana. For information on how to get started with Plugin end-to-end testing and Playwright, checkout the [Get started](https://grafana.com/developers/plugin-tools/e2e-test-a-plugin/get-started) guide.
When end-to-end testing Grafana plugins, a best practice is to use the [`@grafana/plugin-e2e`](https://www.npmjs.com/package/@grafana/plugin-e2e?activeTab=readme) testing tool. The `@grafana/plugin-e2e` tool extends [`@playwright/test`](https://playwright.dev/) capabilities with relevant fixtures, models, and expect matchers. Use it to enable comprehensive end-to-end testing of Grafana plugins across multiple versions of Grafana.
## Adding end-to-end tests for a core plugin
> **Note:** To learn more, refer to our documentation on [plugin development](https://grafana.com/developers/plugin-tools/) and [end-to-end plugin testing](https://grafana.com/developers/plugin-tools/e2e-test-a-plugin/get-started).
Playwright end-to-end tests for plugins should be added to the [`e2e/plugin-e2e`](https://github.com/grafana/grafana/tree/main/e2e/plugin-e2e) directory.
## Add end-to-end tests for a core plugin
1. Add a new directory that has the name as your plugin [`here`](https://github.com/grafana/grafana/tree/main/e2e/plugin-e2e). This is where your plugin tests will be kept.
You can add Playwright end-to-end tests for plugins to the [`e2e/plugin-e2e`](https://github.com/grafana/grafana/tree/main/e2e/plugin-e2e) directory.
2. Playwright uses [projects](https://playwright.dev/docs/test-projects) to logically group tests together. All tests in a project share the same configuration.
In the [Playwright config file](https://github.com/grafana/grafana/blob/main/playwright.config.ts), add a new project item. Make sure the `name` and the `testDir` sub directory matches the name of the directory that contains your plugin tests.
Adding `'authenticate'` to the list of dependencies and specifying `'playwright/.auth/admin.json'` as storage state will ensure all tests in your project will start already authenticated as an admin user. If you wish to use a different role for and perhaps test RBAC for some of your tests, please refer to the plugin-e2e [documentation](https://grafana.com/developers/plugin-tools/e2e-test-a-plugin/use-authentication).
1. Add a new directory that has the name as your plugin [`here`](https://github.com/grafana/grafana/tree/main/e2e/plugin-e2e). This is the directory where your plugin tests will be kept.
1. Playwright uses [projects](https://playwright.dev/docs/test-projects) to logically group tests together. All tests in a project share the same configuration.
In the [Playwright config file](https://github.com/grafana/grafana/blob/main/playwright.config.ts), add a new project item. Make sure the `name` and the `testDir` subdirectory match the name of the directory that contains your plugin tests.
Add `'authenticate'` to the list of dependencies and specify `'playwright/.auth/admin.json'` as the storage state to ensure that all tests in your project will start already authenticated as an admin user. If you want to use a different role for and perhaps test RBAC for some of your tests, refer to our [documentation](https://grafana.com/developers/plugin-tools/e2e-test-a-plugin/use-authentication).
```ts
{
@@ -24,14 +26,16 @@ Playwright end-to-end tests for plugins should be added to the [`e2e/plugin-e2e`
},
```
3. Update the [CODEOWNERS](https://github.com/grafana/grafana/blob/main/.github/CODEOWNERS/#L315) file so that your team is owner of the tests in the directory you added in step 1.
1. Update the [CODEOWNERS](https://github.com/grafana/grafana/blob/main/.github/CODEOWNERS/#L315) file so that your team is owner of the tests in the directory you added in step 1.
## Commands
- `yarn e2e:playwright` will run all Playwright tests. Optionally, you can provide the `--project mysql` argument to run tests in a certain project.
- `yarn e2e:playwright` runs all Playwright tests. Optionally, you can provide the `--project mysql` argument to run tests in a specific project.
The script above assumes you have Grafana running on `localhost:3000`. You may change this by providing environment variables.
The `yarn e2e:playwright` script assumes you have Grafana running on `localhost:3000`. You may change this with an environment variable:
`HOST=127.0.0.1 PORT=3001 yarn e2e:playwright`
`HOST=127.0.0.1 PORT=3001 yarn e2e:playwright`
- `yarn e2e:playwright:server` will start a Grafana [development server](https://github.com/grafana/grafana/blob/main/scripts/grafana-server/start-server) on port 3001 and run the Playwright tests. The development server is provisioned with the [devenv](https://github.com/grafana/grafana/blob/main/contribute/developer-guide.md#add-data-sources) dashboards, data sources and apps.
The `yarn e2e:playwright:server` starts a Grafana [development server](https://github.com/grafana/grafana/blob/main/scripts/grafana-server/start-server) on port 3001 and runs the Playwright tests.
- You can provision the development server with the [devenv](https://github.com/grafana/grafana/blob/main/contribute/developer-guide.md#add-data-sources) dashboards, data sources, and apps.

View File

@@ -1,4 +1,4 @@
# End-to-End tests
# End-to-end tests
Grafana Labs uses a minimal [homegrown solution](../../e2e/utils/index.ts) built on top of [Cypress](https://cypress.io) for its end-to-end (E2E) tests.
@@ -6,17 +6,17 @@ Important notes:
- We generally store all element identifiers ([CSS selectors](https://mdn.io/docs/Web/CSS/CSS_Selectors)) within the framework for reuse and maintainability.
- We generally do not use stubs or mocks as to fully simulate a real user.
- Cypress' promises [do not behave as you'd expect](https://docs.cypress.io/guides/core-concepts/introduction-to-cypress.html#Mixing-Async-and-Sync-code).
- [Testing core Grafana](e2e-core.md) is different than [testing plugins](e2e-plugins.md) - core Grafana uses Cypress whereas plugins use [Playwright test](https://playwright.dev/).
- Cypress' promises [don't behave as you might expect](https://docs.cypress.io/guides/core-concepts/introduction-to-cypress.html#Mixing-Async-and-Sync-code).
- [Testing core Grafana](e2e-core.md) is different than [testing plugins](e2e-plugins.md)core Grafana uses Cypress whereas plugins use [Playwright test](https://playwright.dev/).
## Framework structure
Inspired by https://martinfowler.com/bliki/PageObject.html
Our framework structure is inspired by [Martin Fowler's Page Object](https://martinfowler.com/bliki/PageObject.html).
- `Selector`: A unique identifier that is used from the E2E framework to retrieve an element from the Browser
- `Page`: An abstraction for an object that contains one or more `Selectors` with `visit` function to navigate to the page.
- `Component`: An abstraction for an object that contains one or more `Selectors` but without `visit` function
- `Flow`: An abstraction that contains a sequence of actions on one or more `Pages` that can be reused and shared between tests
- **`Selector`**: A unique identifier that is used from the E2E framework to retrieve an element from the browser
- **`Page`**: An abstraction for an object that contains one or more `Selector` identifiers with the `visit` function to go to the page.
- **`Component`**: An abstraction for an object that contains one or more `Selector` identifiers but without the `visit` function
- **`Flow`**: An abstraction that contains a sequence of actions on one or more `Page` abstractions that can be reused and shared between tests
## Basic example
@@ -26,13 +26,15 @@ Let's start with a simple [JSX](https://reactjs.org/docs/introducing-jsx.html) e
<input className="gf-form-input login-form-input" type="text" />
```
We _could_ target the field with a CSS selector like `.gf-form-input.login-form-input` but that would be brittle as style changes occur frequently. Furthermore there is nothing that signals to future developers that this input is part of an E2E test. At Grafana, we use `data-testid` attributes as our preferred way of defining selectors. See [Aria-Labels vs data-testid](#aria-labels-vs-data-testid) for more details.
It is possible to target the field with a CSS selector like `.gf-form-input.login-form-input`. However, doing so is a brittle solution because style changes occur frequently.
Furthermore, there is nothing that signals to future developers that this input is part of an E2E test. At Grafana, we use `data-testid` attributes as our preferred way of defining selectors. See [Aria-Labels vs data-testid](#aria-labels-vs-data-testid) for more details.
```jsx
<input data-testid="Username input field" className="gf-form-input login-form-input" type="text" />
```
The next step is to create a `Page` representation in our E2E framework to glue the test with the real implementation using the `pageFactory` function. For that function we can supply a `url` and `selectors` like in the example below:
The next step is to create a `Page` representation in our E2E framework. Doing so glues the test with the real implementation using the `pageFactory` function. For that function we can supply a `url` and selector like in the following example:
```typescript
export const Login = {
@@ -43,9 +45,9 @@ export const Login = {
};
```
Note that the selector is prefixed with `data-testid` - this is a signal to the framework to look for the selector in the `data-testid` attribute.
In this example, the selector is prefixed with `data-testid`. The prefix is a signal to the framework to look for the selector in the `data-testid` attribute.
The next step is to add the `Login` page to the `Pages` export within [_\<repo-root>/packages/grafana-e2e-selectors/src/selectors/pages.ts_](../../packages/grafana-e2e-selectors/src/selectors/pages.ts) so that it appears when we type `e2e.pages` in our IDE.
The next step is to add the `Login` page to the `Pages` export within [_\<repo-root>/packages/grafana-e2e-selectors/src/selectors/pages.ts_](../../packages/grafana-e2e-selectors/src/selectors/pages.ts) so that it appears when we type `e2e.pages` in your IDE.
```typescript
export const Pages = {
@@ -56,7 +58,9 @@ export const Pages = {
};
```
Now that we have a `Page` called `Login` in our `Pages` const we can use that to add a selector in our html like shown below and now this really signals to future developers that it is part of an E2E test.
Now that we have a page called `Login` in our `Pages` const, use it to add a selector in our HTML as shown in the following example. This page really signals to future developers that it is part of an E2E test.
Example:
```jsx
import { selectors } from '@grafana/e2e-selectors';
@@ -66,9 +70,8 @@ import { selectors } from '@grafana/e2e-selectors';
The last step in our example is to use our `Login` page as part of a test.
- The `url` property is used whenever we call the `visit` function and is equivalent to the Cypress' [`cy.visit()`](https://docs.cypress.io/api/commands/visit.html#Syntax).
- Any defined selector can be accessed from the `Login` page by invoking it. This is equivalent to the result of the Cypress function [`cy.get(…)`](https://docs.cypress.io/api/commands/get.html#Syntax).
- Use the `url` property whenever you call the `visit` function. It is equivalent to the [`cy.visit()`](https://docs.cypress.io/api/commands/visit.html#Syntax) in Cypress.
- Access any defined selector from the `Login` page by invoking it. This is equivalent to the result of the Cypress function [`cy.get(…)`](https://docs.cypress.io/api/commands/get.html#Syntax).
```typescript
describe('Login test', () => {
@@ -83,7 +86,7 @@ describe('Login test', () => {
## Advanced example
Let's take a look at an example that uses the same `selector` for multiple items in a list for instance. In this example app we have a list of data sources that we want to click on during an E2E test.
Let's take a look at an example that uses the same selector for multiple items in a list for instance. In this example app, there's a list of data sources that we want to click on during an E2E test.
```jsx
<ul>
@@ -97,7 +100,7 @@ Let's take a look at an example that uses the same `selector` for multiple items
</ul>
```
Just as before in the basic example we'll start by creating a page abstraction using the `pageFactory` function:
Like in the basic example, start by creating a page abstraction using the `pageFactory` function:
```typescript
export const DataSources = {
@@ -106,11 +109,11 @@ export const DataSources = {
};
```
You might have noticed that instead of a simple `string` as the `selector`, we're using a `function` that takes a string parameter as an argument and returns a formatted string using the argument.
You might have noticed that instead of a simple string as the selector, there's a function that takes a string parameter as an argument and returns a formatted string using the argument.
Just as before we need to add the `DataSources` page to the exported const `Pages` in `packages/grafana-e2e-selectors/src/selectors/pages.ts`.
Just as before, you need to add the `DataSources` page to the exported const `Pages` in `packages/grafana-e2e-selectors/src/selectors/pages.ts`.
The next step is to use the `dataSources` selector function as in our example below:
The next step is to use the `dataSources` selector function as in the following example:
```jsx
<ul>
@@ -126,7 +129,7 @@ The next step is to use the `dataSources` selector function as in our example be
</ul>
```
When this list is rendered with the data sources with names `A`, `B` and `C` ,the resulting HTML would look like:
When this list is rendered with the data sources with names `A`, `B` and `C` ,the resulting HTML looks like this:
```html
<div class="card-item-name" data-testid="data-testid Data source list item A">A</div>
@@ -134,7 +137,7 @@ When this list is rendered with the data sources with names `A`, `B` and `C` ,th
<div class="card-item-name" data-testid="data-testid Data source list item C">C</div>
```
Now we can write our test. The one thing that differs from the [basic example](#basic-example) above is that we pass in which data source we want to click on as an argument to the selector function:
Now we can write our test. The one thing that differs from the previous [basic example](#basic-example) is that we pass in which data source we want to click as an argument to the selector function:
```typescript
describe('List test', () => {
@@ -147,17 +150,17 @@ describe('List test', () => {
});
```
## Aria-Labels vs data-testid
## aria-label versus data-testid
Our selectors are set up to work with both aria-labels and data-testid attributes. Aria-labels help assistive technologies such as screenreaders identify interactive elements of a page for our users.
Our selectors are set up to work with both `aria-label` attributes and `data-testid` attributes. The `aria-label` attributes help assistive technologies such as screen readers identify interactive elements of a page for our users.
A good example of a time to use an aria-label might be if you have a button with an X to close:
A good example of a time to use an aria-label might be if you have a button with an **X** to close:
```
<button aria-label="close">X<button>
```
It might be clear visually that the X closes the modal, but audibly it would not be clear for example.
It might be clear visually that the **X** closes the modal, but audibly it would not be clear, for example.
```
<button aria-label="close">Close<button>
@@ -165,28 +168,26 @@ It might be clear visually that the X closes the modal, but audibly it would not
The example might read aloud to a user as "Close, Close" or something similar.
However adding aria-labels to elements that are already clearly labeled or not interactive can be confusing and redundant for users with assistive technologies.
However, adding an aria-label to an element that is already clearly labeled or not interactive can be confusing and redundant for users with assistive technologies.
In such cases rather than adding unnecessary aria-labels to components so as to make them selectable for testing, it is preferable to use a data attribute that would not be read aloud with an assistive technology for example:
In such cases, don't add an unnecessary aria-label to a component so as to make them selectable for testing. Instead, use a data attribute that will not be read aloud with an assistive technology. For example:
```
<button data-testid="modal-close-button">Close<button>
```
We have added support for this in our selectors, to use:
Prefix your selector string with "data-testid":
We have added support for data attributes in our selectors Prefix your selector string with `data-testid`:
```typescript
export const Components = {
Login: {
openButton: 'open-button', // this would look for an aria-label
closeButton: 'data-testid modal-close-button', // this would look for a data-testid
openButton: 'open-button', // this looks for an aria-label
closeButton: 'data-testid modal-close-button', // this looks for a data-testid
},
};
```
and in your component, import the selectors and add the data test id:
and in your component, import the selectors and add the `data-testid`:
```
<button data-testid={Selectors.Components.Login.closeButton}>

View File

@@ -1,41 +1,6 @@
# Frontend Style Guide
# Frontend style guide
Generally we follow the Airbnb [React Style Guide](https://github.com/airbnb/javascript/tree/master/react).
## Table of Contents
- [Frontend Style Guide](#frontend-style-guide)
- [Table of Contents](#table-of-contents)
- [Basic rules](#basic-rules)
- [Naming conventions](#naming-conventions)
- [Use `PascalCase` for:](#use-pascalcase-for)
- [Typescript class names](#typescript-class-names)
- [Types and interfaces](#types-and-interfaces)
- [Enums](#enums)
- [Use `camelCase` for:](#use-camelcase-for)
- [Functions](#functions)
- [Methods](#methods)
- [Variables](#variables)
- [React state and properties](#react-state-and-properties)
- [Emotion class names](#emotion-class-names)
- [Use `ALL_CAPS` for constants.](#use-all_caps-for-constants)
- [Use BEM convention for SASS styles.](#use-bem-convention-for-sass-styles)
- [Typing](#typing)
- [File and directory naming conventions](#file-and-directory-naming-conventions)
- [Code organization](#code-organization)
- [Exports](#exports)
- [Comments](#comments)
- [Linting](#linting)
- [React](#react)
- [Props](#props)
- [Name callback props and handlers with an "on" prefix.](#name-callback-props-and-handlers-with-an-on-prefix)
- [React Component definitions](#react-component-definitions)
- [React Component constructor](#react-component-constructor)
- [React Component defaultProps](#react-component-defaultprops)
- [State management](#state-management)
- [Proposal for removing or replacing Angular dependencies](https://github.com/grafana/grafana/pull/23048)
Grafana Labs follows the [Airbnb React/JSX Style Guide](https://github.com/airbnb/javascript/tree/master/react) in matters pertaining to React. This guide provides highlights of the style rules we follow.
## Basic rules
@@ -43,11 +8,13 @@ Generally we follow the Airbnb [React Style Guide](https://github.com/airbnb/jav
- Break large components up into sub-components.
- Use spaces for indentation.
### Naming conventions
## Naming conventions
#### Use `PascalCase` for:
Follow these guidelines when naming elements of your code.
##### Typescript class names
### Class names
Use PascalCase. For example:
```typescript
// bad
@@ -61,7 +28,94 @@ class DataLink {
}
```
##### Types and interfaces
### Constants
Use ALL CAPS for constants. For example:
```typescript
// bad
const constantValue = "This string won't change";
// bad
const constant_value = "This string won't change";
// good
const CONSTANT_VALUE = "This string won't change";
```
### Emotion class names
Use camelCase. For example:
```typescript
const getStyles = (theme: GrafanaTheme2) => ({
// bad
ElementWrapper: css`...`,
// bad
['element-wrapper']: css`...`,
// good
elementWrapper: css({
padding: theme.spacing(1, 2),
background: theme.colors.background.secondary,
}),
});
```
Use hook useStyles2(getStyles) to memoize the styles generation and try to avoid passing props to the getStyles function and instead compose classes using Emotion CX function.
### Enums
Use PascalCase. For example:
```
// bad
enum buttonVariant {
//...
}
// good
enum ButtonVariant {
//...
}
```
### Files and directories
Name files according to the primary export:
- When the primary export is a class or React component, use PascalCase.
- When the primary export is a function, use camelCase.
For files that export multiple utility functions, use the name that describes the responsibility of grouped utilities. For example, a file that exports math utilities should be named `math.ts`.
- Use `constants.ts` for files that export constants.
- Use `actions.ts` for files that export Redux actions.
- Use `reducers.ts` for Redux reducers.
- Use `*.test.ts(x)` for test files.
For directory names, use dash-case (sometimes called kebab-case).
- Use `features/new-important-feature/utils.ts`
### Functions
Use PascalCase. For example:
Use camelCase.
```typescript
// bad
const CalculatePercentage = () => { ... }
// bad
const calculate_percentage = () => { ... }
// good
const calculatePercentage = () => { ... }
```
### Interfaces
Use PascalCase. For example:
```
// bad
@@ -91,35 +145,11 @@ type request_info = ...
type RequestInfo = ...
```
##### Enums
### Methods
```
// bad
enum buttonVariant {
//...
}
Use PascalCase. For example:
// good
enum ButtonVariant {
//...
}
```
#### Use `camelCase` for:
##### Functions
```typescript
// bad
const CalculatePercentage = () => { ... }
// bad
const calculate_percentage = () => { ... }
// good
const calculatePercentage = () => { ... }
```
##### Methods
Use camelCase.
```typescript
class DateCalculator {
@@ -137,164 +167,13 @@ class DateCalculator {
}
```
##### Variables
### React components
```typescript
// bad
const QueryTargets = [];
// bad
const query_targets = [];
Follow these guidelines for naming React components.
// good
const queryTargets = [];
```
#### React callback props and handlers
##### React state and properties
```typescript
interface ModalState {
// bad
IsActive: boolean;
// bad
is_active: boolean;
// good
isActive: boolean;
}
```
##### Emotion class names
```typescript
const getStyles = (theme: GrafanaTheme2) => ({
// bad
ElementWrapper: css`...`,
// bad
['element-wrapper']: css`...`,
// good
elementWrapper: css({
padding: theme.spacing(1, 2),
background: theme.colors.background.secondary,
}),
});
```
Use hook useStyles2(getStyles) to memoize the styles generation and try to avoid passing props to the getStyles function and instead compose classes using emotion cx function.
#### Use `ALL_CAPS` for constants.
```typescript
// bad
const constantValue = "This string won't change";
// bad
const constant_value = "This string won't change";
// good
const CONSTANT_VALUE = "This string won't change";
```
#### Use [BEM](http://getbem.com/) convention for SASS styles.
_SASS styles are deprecated. Please migrate to Emotion whenever you need to modify SASS styles._
### Typing
In general, you should let Typescript infer the types so that there's no need to explicitly define type for each variable.
There are some exceptions to this:
```typescript
// Typescript needs to know type of arrays or objects otherwise it would infer it as array of any
// bad
const stringArray = [];
// good
const stringArray: string[] = [];
```
Specify function return types explicitly in new code. This improves readability by being able to tell what a function returns just by looking at the signature. It also prevents errors when a function's return type is broader than expected by the author.
> **Note:** We don't have linting for this enabled because of lots of old code that needs to be fixed first.
```typescript
// bad
function transform(value?: string) {
if (!value) {
return undefined;
}
return applyTransform(value);
}
// good
function transform(value?: string): TransformedValue | undefined {
if (!value) {
return undefined;
}
return applyTransform(value);
}
```
### File and directory naming conventions
Name files according to the primary export:
- When the primary export is a class or React component, use PascalCase.
- When the primary export is a function, use camelCase.
For files exporting multiple utility functions, use the name that describes the responsibility of grouped utilities. For example, a file exporting math utilities should be named `math.ts`.
- Use `constants.ts` for files exporting constants.
- Use `actions.ts` for files exporting Redux actions.
- Use `reducers.ts` Redux reducers.
- Use `*.test.ts(x)` for test files.
- Use kebab case for directory names: lowercase, words delimited by hyphen ( `-` ). For example, `features/new-important-feature/utils.ts`.
### Code organization
Organize your code in a directory that encloses feature code:
- Put Redux state and domain logic code in `state` directory (i.e. `features/my-feature/state/actions.ts`).
- 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.
For code that needs to be used by external plugin:
- Put components and types in `@grafana/ui`.
- Put data models and data utilities in `@grafana/data`.
- Put runtime services interfaces in `@grafana/runtime`.
#### Exports
- Use named exports for all code you want to export from a file.
- Use declaration exports (i.e. `export const foo = ...`).
- Avoid using default exports (for example, `export default foo`).
- Export only the code that is meant to be used outside the module.
### Comments
- Use [TSDoc](https://github.com/microsoft/tsdoc) comments to document your code.
- Use [react-docgen](https://github.com/reactjs/react-docgen) comments (`/** ... */`) for props documentation.
- Use inline comments for comments inside functions, classes etc.
- Please try to follow the [code comment guidelines](./code-comments.md) when adding comments.
### Linting
Linting is performed using [@grafana/eslint-config](https://github.com/grafana/eslint-config-grafana).
## React
Use the following conventions when implementing React components:
### Props
##### Name callback props and handlers with an "on" prefix.
Name callback props and handlers with an _on_ prefix. For example:
```tsx
// bad
@@ -321,17 +200,9 @@ render() {
```
##### React Component definitions
#### React component constructor
```jsx
// bad
export class YourClass extends PureComponent { ... }
// good
export class YourClass extends PureComponent<{},{}> { ... }
```
##### React Component constructor
Use the following convention when implementing these React components:
```typescript
// bad
@@ -341,7 +212,9 @@ constructor(props) {...}
constructor(props: Props) {...}
```
##### React Component defaultProps
#### React component defaultProps
Use the following convention when implementing these React components:
```typescript
// bad
@@ -351,9 +224,131 @@ static defaultProps = { ... }
static defaultProps: Partial<Props> = { ... }
```
### How to declare functional components
#### React component definitions
We prefer using function declarations over function expressions when creating a new react functional component.
Use the following convention when implementing these React components:
```jsx
// bad
export class YourClass extends PureComponent { ... }
// good
export class YourClass extends PureComponent<{},{}> { ... }
```
#### React state and properties
Use camelCase. For example:
```typescript
interface ModalState {
// bad
IsActive: boolean;
// bad
is_active: boolean;
// good
isActive: boolean;
}
```
### SASS
SASS styles are deprecated. You should migrate to Emotion whenever you need to modify SASS styles.
### Types
In general, you should let TypeScript infer the types so that there's no need to explicitly define the type for each variable.
There are some exceptions to this:
```typescript
// TypeScript needs to know the type of arrays or objects; otherwise, it infers type as an array of any
// bad
const stringArray = [];
// good
const stringArray: string[] = [];
```
Specify function return types explicitly in new code. This improves readability by being able to tell what a function returns just by looking at the signature. It also prevents errors when a function's return type is broader than expected by the author.
> **Note:** Linting is not enabled for this issue because there is old code that needs to be fixed first.
```typescript
// bad
function transform(value?: string) {
if (!value) {
return undefined;
}
return applyTransform(value);
}
// good
function transform(value?: string): TransformedValue | undefined {
if (!value) {
return undefined;
}
return applyTransform(value);
}
```
### Variables
Use PascalCase. For example:
Use camelCase.
```typescript
// bad
const QueryTargets = [];
// bad
const query_targets = [];
// good
const queryTargets = [];
```
## Code organization
Organize your code in a directory that encloses feature code:
- Put Redux state and domain logic code in the `state` directory (for example, `features/my-feature/state/actions.ts`).
- Put React components in the `components` directory (for example, `features/my-feature/components/ButtonPeopleDreamOf.tsx`).
- Put test files next to the test subject.
- Put containers (pages) in the feature root (for example, `features/my-feature/DashboardPage.tsx`).
- Put API function calls that aren't a Redux thunk in an `api.ts` file within the same directory.
- Subcomponents should live in the component folders. Small components don't need their own folder.
- Component SASS styles should live in the same folder as component code.
For code that needs to be used by an external plugin:
- Put components and types in `@grafana/ui`.
- Put data models and data utilities in `@grafana/data`.
- Put runtime services interfaces in `@grafana/runtime`.
### Exports
- Use named exports for all code you want to export from a file.
- Use declaration exports (that is, `export const foo = ...`).
- Avoid using default exports (for example, `export default foo`).
- Export only the code that is meant to be used outside the module.
### Code comments
- Use [TSDoc](https://github.com/microsoft/tsdoc) comments to document your code.
- Use [react-docgen](https://github.com/reactjs/react-docgen) comments (`/** ... */`) for props documentation.
- Use inline comments for comments inside functions, classes, etc.
- Please try to follow the [code comment guidelines](./code-comments.md) when adding comments.
## Linting
Linting is performed using [@grafana/eslint-config](https://github.com/grafana/eslint-config-grafana).
## Functional components
Use function declarations instead of function expressions when creating a new React functional component. For example:
```typescript
// bad
@@ -366,13 +361,6 @@ export const Component: React.FC<Props> = (props) => { ... }
export function Component(props: Props) { ... }
```
Some interesting readings on the topic:
- [Create React App: Remove React.FC from typescript template](https://github.com/facebook/create-react-app/pull/8177)
- [Kent C. Dodds: How to write a React Component in Typescript](https://kentcdodds.com/blog/how-to-write-a-react-component-in-typescript)
- [Kent C. Dodds: Function forms](https://kentcdodds.com/blog/function-forms)
- [Sam Hendrickx: Why you probably shouldn't use React.FC?](https://medium.com/raccoons-group/why-you-probably-shouldnt-use-react-fc-to-type-your-react-components-37ca1243dd13)
## State management
- Don't mutate state in reducers or thunks.

View File

@@ -2,16 +2,20 @@
Grafana uses [Redux Toolkit](https://redux-toolkit.js.org/) to handle Redux boilerplate code.
> Some of our Reducers are used by Angular and therefore state is to be considered as mutable for those reducers.
> **Note:** Some of our reducers are used by Angular; therefore, consider state to be mutable for those reducers.
## Test functionality
Here's how to test the functioning of your Redux reducers.
### reducerTester
Fluent API that simplifies the testing of reducers
Use the Fluent API framework to simplify the testing of reducers.
#### Usage
Example of `reducerTester` in use:
```typescript
reducerTester()
.givenReducer(someReducer, initialState)
@@ -21,9 +25,9 @@ reducerTester()
#### Complex usage
Sometimes you encounter a `resulting state` that contains properties that are hard to compare, such as `Dates`, but you still want to compare that other props in state are correct.
Sometimes you encounter a _resulting state_ that contains properties that are hard to compare, such as `Dates`, but you still want to evaluate whether other props in state are correct.
Then you can use `thenStatePredicateShouldEqual` function on `reducerTester` that will return the `resulting state` so that you can expect upon individual properties..
In these cases, you can evaluate individual properties by using `thenStatePredicateShouldEqual` function on `reducerTester` that will return the resulting state. For example:
```typescript
reducerTester()
@@ -37,10 +41,12 @@ reducerTester()
### thunkTester
Fluent API that simplifies the testing of thunks.
Here's a Fluent API function that simplifies the testing of thunks.
#### Usage
Example of `thunkTester` in use:
```typescript
const dispatchedActions = await thunkTester(initialState).givenThunk(someThunk).whenThunkIsDispatched(arg1, arg2, arg3);
@@ -49,7 +55,7 @@ expect(dispatchedActions).toEqual([someAction('reducer tests')]);
## Typing of connected props
It is possible to infer connected props automatically from `mapStateToProps` and `mapDispatchToProps` using a helper type `ConnectedProps` from Redux. For this to work the `connect` call has to be split into two parts.
It is possible to infer connected props automatically from `mapStateToProps` and `mapDispatchToProps` using a helper type `ConnectedProps` from Redux. For this to work properly, split the `connect` call into two parts like so:
```typescript
import { connect, ConnectedProps } from 'react-redux';
@@ -80,4 +86,4 @@ class PanelEditorUnconnected extends PureComponent<Props> {}
export const PanelEditor = connector(PanelEditorUnconnected);
```
For more examples, refer to the [Redux docs](https://react-redux.js.org/using-react-redux/static-typing#inferring-the-connected-props-automatically).
For more examples, refer to the [Redux documentation](https://react-redux.js.org/using-react-redux/static-typing#inferring-the-connected-props-automatically).

View File

@@ -1,6 +1,8 @@
# Storybook
[Storybook](https://storybook.js.org/) is a tool which we use to manage our design system and the components which are a part of it. Storybook consists of _stories:_ each story represents a component and a case in which it is used. To show a wide variety of use cases is good both documentation wise and for troubleshooting -- it might be possible to reproduce a bug for an edge case in a story.
[Storybook](https://storybook.js.org/) is a tool which Grafana uses to manage our design system and its components. Storybook consists of _stories_. Each story represents a component and the case in which it is used.
To show a wide variety of use cases is good both documentation wise and for troubleshooting—it might be possible to reproduce a bug for an edge case in a story.
Storybook is:
@@ -10,16 +12,22 @@ Storybook is:
## How to create stories
Stories for a component should be placed next to the component file. The Storybook file requires the same name as the component file. For example, a story for `SomeComponent.tsx` will have the file name `SomeComponent.story.tsx`. If a story should be internal, not visible in production, name the file `SomeComponent.story.internal.tsx`.
Stories for a component should be placed next to the component file. The Storybook file requires the same name as the component file. For example, a story for `SomeComponent.tsx` has the file name `SomeComponent.story.tsx`.
If a story should be internal—not visible in production—name the file `SomeComponent.story.internal.tsx`.
### Writing stories
When writing stories, we use the [CSF format](https://storybook.js.org/docs/formats/component-story-format/). For more in-depth information on writing stories, see [Storybooks documentation on writing stories](https://storybook.js.org/docs/basics/writing-stories/).
When writing stories, we use the [CSF format](https://storybook.js.org/docs/formats/component-story-format/).
> **Note:** For more in-depth information on writing stories, see [Storybooks documentation](https://storybook.js.org/docs/basics/writing-stories/).
With the CSF format, the default export defines some general information about the stories in the file:
- `title`: Where the component is going to live in the hierarchy
- `decorators`: A list which can contain wrappers or provide context, such as theming
- **`title`**: Where the component is going to live in the hierarchy
- **`decorators`**: A list which can contain wrappers or provide context, such as theming
Example:
```jsx
// In MyComponent.story.tsx
@@ -34,18 +42,18 @@ export default {
```
When it comes to writing the actual stories, you continue in the same file with named exports. The exports are turned into the story name.
When it comes to writing the actual stories, you should continue in the same file with named exports. The exports are turned into the story name like so:
```jsx
// Will produce a story name “some story”
export const someStory = () => <MyComponent />;
```
If you want to write cover cases with different values for props, then using knobs is usually enough. You dont need to create a new story. This will be covered further down.
If you want to write cover cases with different values for props, then using knobs is usually enough. You dont need to create a new story. This topic will be covered further down.
### Categorization
We currently have these categories:
We have these categories of components:
- **Docs Overview** - Guidelines and information regarding the design system
- **Forms** - Components commonly used in forms such as different kind of inputs
@@ -55,7 +63,7 @@ We currently have these categories:
## Writing MDX documentation
An MDX file is basically a markdown file with the possibility to add jsx. These files are used by Storybook to create a “docs” tab.
An MDX file is a markdown file with the possibility to add JSX. These files are used by Storybook to create a “docs” tab.
### Link the MDX file to a components stories
@@ -83,7 +91,7 @@ export default {
### MDX file structure
There are some things that the MDX file should contain:
The MDX file should contain the following items:
- When and why the component should be used
- Best practices - dos and donts for the component
@@ -101,7 +109,9 @@ import { MyComponent } from './MyComponent';
### MDX file without a relationship to a component
An MDX file can exist by itself without any connection to a story. This can be good for writing things such as a general guidelines page. Two things are required for this to work:
An MDX file can exist by itself without any connection to a story. This can be good for writing things such as a general guidelines page.
Two conditions must be met for this to work:
- The file needs to be named `*.story.mdx`
- A `Meta` tag must exist that says where in the hierarchy the component lives. It can look like this:
@@ -115,7 +125,7 @@ An MDX file can exist by itself without any connection to a story. This can be g
```
You can add parameters to the Meta tag. This example shows how to hide the tools:
You can add parameters to the `Meta` tag. This example shows how to hide the tools:
```jsx
<Meta title="Docs Overview/Color Palettes" parameters={{ options: { isToolshown: false }}}/>
@@ -128,11 +138,11 @@ You can add parameters to the Meta tag. This example shows how to hide the tools
## Documenting component properties
A quick way to get an overview of what a component does is by looking at its properties. That's why it is important that we document these in a good way.
A quick way to get an overview of what a component does is by looking at its properties. That's why it is important that you document these in a good way.
### Comments
When writing the props interface for a component, it is possible to add a comment to that specific property, which will end up in the Props table in the MDX file. The comments are generated by [react-docgen](https://github.com/reactjs/react-docgen) and are formatted by writing `/** */`.
When writing the props interface for a component, it's possible to add a comment to that specific property. When you do so, the comment will appear in the Props table in the MDX file. The comments are generated by [react-docgen](https://github.com/reactjs/react-docgen) and are formatted by writing `/** */`.
```jsx
interface MyProps {
@@ -143,25 +153,28 @@ interface MyProps {
### Controls
The [controls addon](https://storybook.js.org/docs/react/essentials/controls) provides a way to interact with a component's properties dynamically and requires much less code than knobs. We're deprecating knobs in favor of using controls.
The [controls addon](https://storybook.js.org/docs/react/essentials/controls) provides a way to interact with a component's properties dynamically. It also requires much less code than knobs.
Knobs are deprecated in favor of using controls.
#### Migrating a story from Knobs to Controls
As a test, we migrated the [button story](https://github.com/grafana/grafana/blob/main/packages/grafana-ui/src/components/Button/Button.story.tsx). Here's the guide on how to migrate a story to controls.
As a test, we migrated the [button story](https://github.com/grafana/grafana/blob/main/packages/grafana-ui/src/components/Button/Button.story.tsx).
Here's the guide on how to migrate a story to controls.
1. Remove the `@storybook/addon-knobs` dependency.
2. Import the Story type from `@storybook/react`
2. Import the `Story` type from `@storybook/react`
`import { Story } from @storybook/react`
3. Import the props interface from the component you're working on (these must be exported in the component).
3. Import the props interface from the component you're working on (these must be exported in the component):
`import { Props } from './Component'`
4. Add the Story type to all stories in the file, then replace the props sent to the component
and remove any knobs.
4. Add the `Story` type to all stories in the file, then replace the props sent to the component and remove any knobs:
Before
Before:
```tsx
export const Simple = () => {
@@ -172,7 +185,7 @@ As a test, we migrated the [button story](https://github.com/grafana/grafana/blo
};
```
After
After:
```tsx
export const Simple: Story<Props> = ({ prop1, prop2 }) => {
@@ -180,7 +193,7 @@ As a test, we migrated the [button story](https://github.com/grafana/grafana/blo
};
```
5. Add default props (or args in Storybook language).
5. Add default props (or `args` in Storybook language):
```tsx
Simple.args = {
@@ -189,8 +202,7 @@ As a test, we migrated the [button story](https://github.com/grafana/grafana/blo
};
```
6. If the component has advanced props type (ie. other than string, number, boolean), you need to
specify these in an `argTypes`. This is done in the default export of the story.
6. If the component has advanced props type (that is, other than string, number, or Boolean), you need to specify these in an `argTypes`. Do this in the default export of the story:
```tsx
export default {
@@ -204,6 +216,6 @@ As a test, we migrated the [button story](https://github.com/grafana/grafana/blo
## Best practices
- When creating a new component or writing documentation for an existing one, always cover the basic use case it was intended for with a code example.
- When creating a new component or writing documentation for an existing one, add a code example. The example should always cover the basic use case it was intended for.
- Use stories and knobs to create edge cases. If you are trying to solve a bug, try to reproduce it with a story.
- Do not create stories in the MDX, always create them in the `*.story.tsx` file.
- Do not create stories in the MDX. Instead, create them in the `*.story.tsx` file.

View File

@@ -1,16 +1,16 @@
# Styling Grafana
[Emotion](https://emotion.sh/docs/introduction) is our default-to-be approach to styling React components. It provides a way for styles to be a consequence of properties and state of a component.
[Emotion](https://emotion.sh/docs/introduction) is Grafana's default-to-be approach to styling React components. It provides a way for styles to be a consequence of properties and state of a component.
## Usage
For styling components, use [Emotion's `css` function](https://emotion.sh/docs/emotion#css).
For styling components, use [Emotion's `css` function](https://emotion.sh/docs/@emotion/css#css).
### Basic styling
To access the theme in your styles, use the `useStyles` hook. It provides basic memoization and access to the theme object.
To access the Emotion theme in your styles, use the `useStyles` hook. This hook provides basic memoization and access to the theme object.
> Please remember to put `getStyles` function at the end of the file!
> **Note:** Please remember to put `getStyles` function at the end of the file!
```tsx
import { GrafanaTheme2 } from '@grafana/data';
@@ -30,12 +30,17 @@ const getStyles = (theme: GrafanaTheme2) =>
});
```
### Styling complex components
### Style complex components
In more complex cases, especially when you need to style multiple DOM elements in one component, or when using styles that depend on properties and/or state you
can have your getStyles function return an object with many class names and use [Emotion's `cx` function](https://emotion.sh/docs/@emotion/css#cx) to compose them.
In more complex cases, you can have the `getStyles` function return an object with many class names and use [Emotion's `cx` function](https://emotion.sh/docs/@emotion/css#cx) to compose them.
Let's say you need to style a component that has a different background depending on the `isActive` property :
This feature can be especially useful in certain use cases:
- when you need to style multiple DOM elements in one component
- when using styles that depend on properties
- when using styles that depend on state
Let's say you need to style a component that has a different background depending on the `isActive` property. For example:
```tsx
import { css, cx } from '@emotion/css';
@@ -75,4 +80,4 @@ const getStyles = (theme: GrafanaTheme2) => {
};
```
For more information about themes at Grafana please see the [themes guide](./themes.md).
For more information about themes at Grafana, refer to the [themes guide](./themes.md).

View File

@@ -1,10 +1,11 @@
# Testing Guidelines
# Testing guidelines
The goal of this document is to address the most frequently asked "How to" questions related to unit testing.
## Best practices
## Some recommended practices for testing
- Default to the `*ByRole` queries when testing components as it encourages testing with accessibility concerns in mind. It's also possible to use `*ByLabelText` queries. However, the `*ByRole` queries are [more robust](https://testing-library.com/docs/queries/bylabeltext/#name) and are generally recommended over the former.
- Default to the `*ByRole` queries when testing components because it encourages testing with accessibility concerns in mind.
- Alternatively, you could use `*ByLabelText` queries for testing components. However, we recommend the `*ByRole` queries because they are [more robust](https://testing-library.com/docs/queries/bylabeltext/#name).
## Testing User Interactions
@@ -13,7 +14,7 @@ We use the [user-event](https://testing-library.com/docs/user-event/intro) libra
There are two important considerations when working with `userEvent`:
1. All methods in `userEvent` are asynchronous, and thus require the use of `await` when called.
2. Directly calling methods from `userEvent` may not be supported in future versions. As such, it's necessary to first call `userEvent.setup()` prior to the tests. This method returns a `userEvent` instance, complete with all its methods. This setup process can be simplified using a utility function:
1. Directly calling methods from `userEvent` may not be supported in future versions. As such, it's necessary to first call `userEvent.setup()` prior to the tests. This method returns a `userEvent` instance, complete with all its methods. This setup process can be simplified using a utility function:
```tsx
import { render, screen } from '@testing-library/react';
@@ -32,15 +33,15 @@ it('should render', async () => {
});
```
## Debugging Tests
## Debug tests
There are a few utilities that can be useful for debugging tests:
- [screen.debug()](https://testing-library.com/docs/queries/about/#screendebug) - This function prints a human-readable representation of the document's DOM tree when called without arguments, or the DOM tree of specific node(s) when provided with arguments. It is internally using `console.log` to log the output to terminal.
- [Testing Playground](https://testing-playground.com/) - An interactive sandbox that allows testing which queries work with specific HTML elements.
- [logRoles](https://testing-library.com/docs/dom-testing-library/api-debugging/#prettydom) - A utility function that prints out all the implicit ARIA roles for a given DOM tree.
- [screen.debug()](https://testing-library.com/docs/queries/about/#screendebug) - This function prints a human-readable representation of the document's DOM tree when called without arguments, or the DOM tree of specific node or nodes when provided with arguments. It is internally using `console.log` to log the output to terminal.
- [Testing Playground](https://testing-playground.com/) - An interactive sandbox that allows testing of which queries work with specific HTML elements.
- [prettyDOM logRoles](https://testing-library.com/docs/dom-testing-library/api-debugging/#prettydom) - A utility function that prints out all the implicit ARIA roles for a given DOM tree.
## Testing Select Components
## Testing select components
Here, the [OrgRolePicker](https://github.com/grafana/grafana/blob/38863844e7ac72c7756038a1097f89632f9985ff/public/app/features/admin/OrgRolePicker.tsx) component is used as an example. This component essentially serves as a wrapper for the `Select` component, complete with its own set of options.
@@ -78,7 +79,7 @@ export function OrgRolePicker({ value, onChange, 'aria-label': ariaLabel, inputI
### Querying the Select Component
The recommended way to query `Select` components is by using a label. Add a `label` element and provide the `htmlFor` prop with a matching `inputId`. Alternatively, `aria-label` can be specified on the `Select`.
It is a recommended practice to query `Select` components by using a label. Add a `label` element and provide the `htmlFor` prop with a matching `inputId`. Alternatively, you can specify `aria-label` on the `Select` statement.
```tsx
describe('OrgRolePicker', () => {
@@ -94,7 +95,7 @@ describe('OrgRolePicker', () => {
});
```
### Testing the Display of Correct Options
### Test the display of correct options
At times, it might be necessary to verify that the `Select` component is displaying the correct options. In such instances, the best solution is to click the `Select` component and match the desired option using the `*ByText` query.
@@ -129,11 +130,11 @@ it('should select an option', async () => {
});
```
## Mocking Objects and Functions
## Mock objects and functions
### Mocking the `window` Object and Its Methods
### Mock the `window` object and its methods
The recommended approach for mocking the `window` object is to use Jest spies. Jest's spy functions provide a built-in mechanism for restoring mocks. This feature eliminates the need to manually save a reference to the `window` object.
The recommended approach for mocking the `window` object is to use [Jest spies](https://jestjs.io/docs/jest-object). Jest's spy functions provide a built-in mechanism for restoring mocks. This feature eliminates the need to manually save a reference to the `window` object.
```tsx
let windowSpy: jest.SpyInstance;
@@ -156,7 +157,7 @@ it('should test with window', function () {
### Mocking getBackendSrv()
The `getBackendSrv()` function is used to make HTTP requests to the Grafana backend. It is possible to mock this function using the `jest.mock` method.
Use the `getBackendSrv()` function to make HTTP requests to the Grafana backend. It is possible to mock this function using the `jest.mock` method.
```tsx
jest.mock('@grafana/runtime', () => ({
@@ -169,9 +170,9 @@ jest.mock('@grafana/runtime', () => ({
#### Mocking getBackendSrv for AsyncSelect
The `AsyncSelect` component is used to asynchronously load options. As such, it often relies on the `getBackendSrv` for loading the options.
Use the `AsyncSelect` component to asynchronously load options. This component often relies on the `getBackendSrv` for loading the options.
Here's how the test would look like for this [OrgPicker](https://github.com/grafana/grafana/blob/38863844e7ac72c7756038a1097f89632f9985ff/public/app/core/components/Select/OrgPicker.tsx) component, which uses `AsyncSelect` under the hood.
Here's what the test looks like for this [OrgPicker](https://github.com/grafana/grafana/blob/38863844e7ac72c7756038a1097f89632f9985ff/public/app/core/components/Select/OrgPicker.tsx) component, which uses `AsyncSelect` under the hood:
```tsx
import { screen, render } from '@testing-library/react';

View File

@@ -7,7 +7,7 @@ Triage helps ensure that GitHub issues resolve quickly by:
- Lowering the issue count by preventing duplicate issues.
- Streamlining the development process by preventing duplicate discussions.
This document gives you some ideas on what you can do to help. For more information, read more about [how the core Grafana team triage issues](/ISSUE_TRIAGE.md).
This document gives you some ideas on what you can do to help. For more information, read more about [how the core Grafana team triage issues](/contribute/ISSUE_TRIAGE.md).
## Improve issues
@@ -23,9 +23,9 @@ Investigate issues that we haven't been able to reproduce yet. In some cases, th
## Vote on issues
Use [GitHub reactions](https://help.github.com/en/articles/about-conversations-on-github#reacting-to-ideas-in-comments) to let us know what's important to you. Vote on bugs if you've experienced the same problem. **Don't vote, or react, by commenting on the issue.**
Use [GitHub reactions](https://github.blog/news-insights/product-news/add-reactions-to-pull-requests-issues-and-comments/) to let us know what's important to you. Vote on bugs if you've experienced the same problem. **Don't vote, or react, by commenting on the issue.**
Read more about [how we prioritize issues](/ISSUE_TRIAGE.md#4-prioritization-of-issues).
Read more about [how we prioritize issues](/contribute/ISSUE_TRIAGE.md#4-prioritization-of-issues).
## Report duplicates

View File

@@ -389,9 +389,9 @@
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"rawFrameContent": "[\n {\n \"schema\": {\n \"refId\": \"A\",\n \"meta\": {\n \"typeVersion\": [\n 0,\n 0\n ],\n \"custom\": {\n \"customStat\": 10\n }\n },\n \"fields\": [\n {\n \"name\": \"time\",\n \"type\": \"time\",\n \"typeInfo\": {\n \"frame\": \"time.Time\",\n \"nullable\": true\n },\n \"config\": {\n \"interval\": 3600000\n }\n },\n {\n \"name\": \"Value\",\n \"type\": \"number\",\n \"typeInfo\": {\n \"frame\": \"float64\",\n \"nullable\": true\n },\n \"labels\": {\n \"pod\": \"A-pod\"\n },\n \"config\": {}\n }\n ]\n },\n \"data\": {\n \"values\": [\n [\n 1727107111901,\n 1727110711901,\n 1727114311901,\n 1727117911901,\n 1727121511901,\n 1727125111901\n ],\n [\n 1.907286825122581,\n 2.260951647569786,\n 1.887442338051216,\n 2.1526144400893514,\n 1.7287721375237766,\n 1.7262902137793208\n ]\n ]\n }\n },\n {\n \"schema\": {\n \"refId\": \"A\",\n \"meta\": {\n \"typeVersion\": [\n 0,\n 0\n ],\n \"custom\": {\n \"customStat\": 10\n }\n },\n \"fields\": [\n {\n \"name\": \"time\",\n \"type\": \"time\",\n \"typeInfo\": {\n \"frame\": \"time.Time\",\n \"nullable\": true\n },\n \"config\": {\n \"interval\": 3600000\n }\n },\n {\n \"name\": \"Value\",\n \"type\": \"number\",\n \"typeInfo\": {\n \"frame\": \"float64\",\n \"nullable\": true\n },\n \"labels\": {\n \"pod\": \"A-pod1\"\n },\n \"config\": {}\n }\n ]\n },\n \"data\": {\n \"values\": [\n [\n 1727107111901,\n 1727110711901,\n 1727114311901,\n 1727117911901,\n 1727121511901,\n 1727125111901\n ],\n [\n 1.907286825122581,\n 1.589539045095202,\n 1.5914283506847613,\n 1.8976990616650726,\n 1.758223085999124,\n 2.2294649594813816\n ]\n ]\n }\n },\n {\n \"schema\": {\n \"refId\": \"A\",\n \"meta\": {\n \"typeVersion\": [\n 0,\n 0\n ],\n \"custom\": {\n \"customStat\": 10\n }\n },\n \"fields\": [\n {\n \"name\": \"time\",\n \"type\": \"time\",\n \"typeInfo\": {\n \"frame\": \"time.Time\",\n \"nullable\": true\n },\n \"config\": {\n \"interval\": 3600000\n }\n },\n {\n \"name\": \"Value\",\n \"type\": \"number\",\n \"typeInfo\": {\n \"frame\": \"float64\",\n \"nullable\": true\n },\n \"labels\": {\n \"pod\": \"A-pod2\"\n },\n \"config\": {}\n }\n ]\n },\n \"data\": {\n \"values\": [\n [\n 1727107111901,\n 1727110711901,\n 1727114311901,\n 1727117911901,\n 1727121511901,\n 1727125111901\n ],\n [\n 1.907286825122581,\n 2.0914263380328766,\n 1.8164545521094575,\n 1.621111084665713,\n 1.3902653996444705,\n 1.482803315949775\n ]\n ]\n }\n }\n]",
"refId": "A",
"scenarioId": "random_walk",
"seriesCount": 3
"scenarioId": "raw_frame"
}
],
"thresholds": [],
@@ -462,6 +462,145 @@
"title": "Status + Notes",
"type": "text"
},
{
"aliasColors": {},
"bars": true,
"dashLength": 10,
"dashes": false,
"datasource": {
"default": false,
"type": "datasource",
"uid": "-- Dashboard --"
},
"fieldConfig": {
"defaults": {
"unit": "short"
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 11,
"w": 16,
"x": 0,
"y": 22
},
"hiddenSeries": false,
"id": 32,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"max": true,
"min": false,
"show": true,
"total": false,
"values": true
},
"lines": false,
"linewidth": 1,
"nullPointMode": "null",
"options": {
"alertThreshold": true,
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"mode": "multi",
"sort": "none"
}
},
"percentage": false,
"pluginVersion": "11.3.0-pre",
"pointradius": 2,
"points": false,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"datasource": {
"type": "datasource",
"uid": "-- Dashboard --"
},
"panelId": 28,
"refId": "A"
}
],
"thresholds": [],
"timeRegions": [],
"title": "Flot graph - x axis series mode (with legend calcs)",
"tooltip": {
"shared": false,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"mode": "series",
"show": true,
"values": [
"total"
]
},
"yaxes": [
{
"$$hashKey": "object:88",
"format": "short",
"logBase": 1,
"show": true
},
{
"$$hashKey": "object:89",
"format": "short",
"logBase": 1,
"show": true
}
],
"yaxis": {
"align": false
}
},
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"gridPos": {
"h": 11,
"w": 8,
"x": 16,
"y": 22
},
"id": 33,
"options": {
"code": {
"language": "plaintext",
"showLineNumbers": false,
"showMiniMap": false
},
"content": "# Graph panel >> Bar gauge panel\n",
"mode": "markdown"
},
"pluginVersion": "11.3.0-pre",
"targets": [
{
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
},
"refId": "A"
}
],
"title": "Status + Notes",
"type": "text"
},
{
"aliasColors": {},
"bars": true,
@@ -1183,4 +1322,4 @@
"uid": "cdd412c4",
"version": 68,
"weekStart": ""
}
}

View File

@@ -18,7 +18,7 @@ name = "displayName"
surname = "sn"
username = "cn"
member_of = "memberOf"
email = "mail"
email = "mail"
# Map ldap groups to grafana org roles
[[servers.group_mappings]]

View File

@@ -51,7 +51,7 @@
depends_on:
- oauthkeycloak
extra_hosts:
- "env.grafana.local:host.containers.internal"
- "env.grafana.local:host-gateway"
ports:
- 8088:8088
restart: unless-stopped

View File

@@ -0,0 +1,39 @@
events { worker_connections 1024; }
http {
# This is required to proxy Grafana Live WebSocket connections.
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
upstream grafana {
server host.docker.internal:3000;
}
server {
listen 8090;
location / {
root /var/www/html;
}
# Set the followings in grafana.ini:
# [server]
# root_url = http://localhost:8090/grafana/
# serve_from_sub_path = true
location /grafana/ {
proxy_set_header Host $host;
proxy_pass http://grafana;
}
# Proxy Grafana Live WebSocket connections.
location /grafana/api/live/ {
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_set_header Host $host;
proxy_pass http://grafana;
}
}
}

View File

@@ -30,7 +30,7 @@ Environment variables
- Graphite prefix
- Optional, defaults to collectd.
- `REPORT_BY_CPU`
- Report per-CPU metrics if true, global sum of CPU metrics if false (details: [collectd.conf man page](https://collectd.org/documentation/manpages/collectd.conf.5.shtml#plugin_cpu))
- Report per-CPU metrics if true, global sum of CPU metrics if false (details: [collectd.conf man page](https://www.collectd.org/documentation/manpages/collectd.conf.html))
- Optional, defaults to false.
- `COLLECT_INTERVAL`
- Collection interval and thus resolution of metrics

View File

@@ -1,5 +1,5 @@
mimir_backend:
image: grafana/mimir-alpine:r295-a23e559
image: grafana/mimir-alpine:r304-3872ccb
container_name: mimir_backend
command:
- -target=backend
@@ -14,4 +14,4 @@
- 8080:8080
volumes:
- "./docker/blocks/mimir_backend/nginx/nginx.conf.template:/etc/nginx/templates/nginx.conf.template"
- "./docker/blocks/mimir_backend/nginx/.htpasswd:/etc/nginx/.htpasswd"
- "./docker/blocks/mimir_backend/nginx/.htpasswd:/etc/nginx/.htpasswd"

View File

@@ -0,0 +1,31 @@
# NanoMQ MQTT broker
Starts a [NanoMQ MQTT broker](https://nanomq.io/docs/en/latest/).
## Authentication
The broker is configured to use a simple username/password authentication.
See [./nanomq_pwd.conf](./nanomq_pwd.conf) for the default credentials.
## TLS Certificates
If you want to configure an MQTT contact point in Grafana Alerting with TLS, you need to provide a certificate and key.
You can find them in `/etc/certs` directory in the container:
``` shell
docker exec devenv-mqtt-1 ls /etc/certs/
```
### CA Certificate
``` shell
docker exec devenv-mqtt-1 cat /etc/certs/ca.pem
```
### Client certificates
``` shell
docker exec devenv-mqtt-1 cat /etc/certs/client.pem
docker exec devenv-mqtt-1 cat /etc/certs/client.key
```

View File

@@ -0,0 +1,9 @@
FROM emqx/nanomq:0.21.11-full
RUN apt-get update && apt-get install -y \
openssl \
&& rm -rf /var/lib/apt/lists/*
COPY ./san.cnf /etc/certs/san.cnf
COPY ./gen_certs.sh /etc/certs/gen_certs.sh
RUN /etc/certs/gen_certs.sh

View File

@@ -0,0 +1,18 @@
#!/bin/bash
DAYS_VALID=3650
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
# Create CA certificate
openssl genpkey -algorithm RSA -out "$SCRIPT_DIR/ca.key"
openssl req -new -x509 -days $DAYS_VALID -key "$SCRIPT_DIR/ca.key" -out "$SCRIPT_DIR/ca.pem" -subj "/CN=My CA"
# Create server certificate
openssl genpkey -algorithm RSA -out "$SCRIPT_DIR/server.key"
openssl req -new -key "$SCRIPT_DIR/server.key" -out "$SCRIPT_DIR/server.csr" -subj "/CN=localhost"
openssl x509 -req -days $DAYS_VALID -in "$SCRIPT_DIR/server.csr" -CA "$SCRIPT_DIR/ca.pem" -CAkey "$SCRIPT_DIR/ca.key" -CAcreateserial -out "$SCRIPT_DIR/server.pem" -extfile "$SCRIPT_DIR/san.cnf" -extensions v3_req
# Create client key and certificate
openssl genpkey -algorithm RSA -out "$SCRIPT_DIR/client.key"
openssl req -new -key "$SCRIPT_DIR/client.key" -out "$SCRIPT_DIR/client.csr" -subj "/CN=Client"
openssl x509 -req -days $DAYS_VALID -in "$SCRIPT_DIR/client.csr" -CA "$SCRIPT_DIR/ca.pem" -CAkey "$SCRIPT_DIR/ca.key" -CAcreateserial -out "$SCRIPT_DIR/client.pem" -extfile "$SCRIPT_DIR/san.cnf" -extensions v3_req

View File

@@ -0,0 +1,7 @@
[ v3_req ]
subjectAltName = @alt_names
[ alt_names ]
DNS.1 = localhost
IP.1 = 127.0.0.1
IP.2 = ::1

View File

@@ -0,0 +1,12 @@
mqtt:
build:
context: docker/blocks/mqtt/build
ports:
- "127.0.0.1:1883:1883" # MQTT
- "127.0.0.1:8883:8883" # MQTT over TLS
- "127.0.0.1:8083:8083" # MQTT over WS
- "127.0.0.1:8443:8443" # MQTT over WSS
volumes:
- ${PWD}/docker/blocks/mqtt/nanomq.conf:/etc/nanomq.conf
- ${PWD}/docker/blocks/mqtt/nanomq_pwd.conf:/etc/nanomq_pwd.conf
- ${PWD}/docker/blocks/mqtt/nanomq_acl.conf:/etc/nanomq_acl.conf

View File

@@ -0,0 +1,40 @@
log {
to=console
level=info
}
listeners.tcp {
bind = "0.0.0.0:1883"
}
listeners.ssl {
bind = "0.0.0.0:8883"
keyfile = "/etc/certs/server.key"
certfile = "/etc/certs/server.pem"
cacertfile = "/etc/certs/ca.pem"
# Change these settings to true if you want to deny
# access for clients that don't have a certificate.
verify_peer = false
fail_if_no_peer_cert = false
}
listeners.ws {
bind = "0.0.0.0:8083"
}
listeners.wss {
bind = "0.0.0.0:8443"
}
auth {
allow_anonymous = false
no_match = deny
deny_action = disconnect
password = {include "/etc/nanomq_pwd.conf"}
acl = {
include "/etc/nanomq_acl.conf"
}
}

View File

@@ -0,0 +1,7 @@
rules = [
{"permit": "allow", "username": "grafana", "action": "subscribe", "topics": ["#"]}
{"permit": "allow", "username": "grafana", "action": "publish", "topics": ["#"]}
{"permit": "allow", "username": "admin", "action": "subscribe", "topics": ["#"]}
{"permit": "allow", "username": "admin", "action": "publish", "topics": ["#"]}
{"permit": "deny"}
]

View File

@@ -0,0 +1,2 @@
admin:admin
grafana:grafana

View File

@@ -37,3 +37,8 @@
build: docker/blocks/prometheus_random_data
ports:
- "8081:8080"
prometheus-high-card:
build: docker/blocks/prometheus_high_card
ports:
- "9111:9111"

View File

@@ -38,6 +38,10 @@ scrape_configs:
static_configs:
- targets: ['prometheus-random-data:8080']
- job_name: 'prometheus-high-card'
static_configs:
- targets: ['prometheus-high-card:9111']
- job_name: 'mysql'
static_configs:
- targets: ['mysql-exporter:9104']

View File

@@ -0,0 +1,15 @@
FROM golang:latest AS builder
ADD main.go /
ADD go.mod /
ADD go.sum /
WORKDIR /
RUN go mod download
RUN CGO_ENABLED=0 GOOS=linux go build -o main .
FROM scratch
WORKDIR /
EXPOSE 9111
COPY --from=builder /main /main
ENTRYPOINT ["/main"]

View File

@@ -0,0 +1,6 @@
prometheus_high_card:
build: docker/blocks/prometheus_high_card
ports:
- "3012:3012"
extra_hosts:
- "host.docker.internal:host-gateway"

View File

@@ -0,0 +1,20 @@
module high-card
go 1.22.4
require (
github.com/prometheus/client_golang v1.20.2
golang.org/x/exp v0.0.0-20240823005443-9b4947da3948
)
require (
github.com/beorn7/perks v1.0.1 // indirect
github.com/cespare/xxhash/v2 v2.3.0 // indirect
github.com/klauspost/compress v1.17.9 // indirect
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
github.com/prometheus/client_model v0.6.1 // indirect
github.com/prometheus/common v0.55.0 // indirect
github.com/prometheus/procfs v0.15.1 // indirect
golang.org/x/sys v0.22.0 // indirect
google.golang.org/protobuf v1.34.2 // indirect
)

View File

@@ -0,0 +1,26 @@
github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=
github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs=
github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
github.com/klauspost/compress v1.17.9 h1:6KIumPrER1LHsvBVuDa0r5xaG0Es51mhhB9BQB2qeMA=
github.com/klauspost/compress v1.17.9/go.mod h1:Di0epgTjJY877eYKx5yC51cX2A2Vl2ibi7bDH9ttBbw=
github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc=
github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw=
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA=
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ=
github.com/prometheus/client_golang v1.20.2 h1:5ctymQzZlyOON1666svgwn3s6IKWgfbjsejTMiXIyjg=
github.com/prometheus/client_golang v1.20.2/go.mod h1:PIEt8X02hGcP8JWbeHyeZ53Y/jReSnHgO035n//V5WE=
github.com/prometheus/client_model v0.6.1 h1:ZKSh/rekM+n3CeS952MLRAdFwIKqeY8b62p8ais2e9E=
github.com/prometheus/client_model v0.6.1/go.mod h1:OrxVMOVHjw3lKMa8+x6HeMGkHMQyHDk9E3jmP2AmGiY=
github.com/prometheus/common v0.55.0 h1:KEi6DK7lXW/m7Ig5i47x0vRzuBsHuvJdi5ee6Y3G1dc=
github.com/prometheus/common v0.55.0/go.mod h1:2SECS4xJG1kd8XF9IcM1gMX6510RAEL65zxzNImwdc8=
github.com/prometheus/procfs v0.15.1 h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0learggepc=
github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk=
golang.org/x/exp v0.0.0-20240823005443-9b4947da3948 h1:kx6Ds3MlpiUHKj7syVnbp57++8WpuKPcR5yjLBjvLEA=
golang.org/x/exp v0.0.0-20240823005443-9b4947da3948/go.mod h1:akd2r19cwCdwSwWeIdzYQGa/EZZyqcOdwWiwj5L5eKQ=
golang.org/x/sys v0.22.0 h1:RI27ohtqKCnwULzJLqkv897zojh5/DwS/ENaMzUOaWI=
golang.org/x/sys v0.22.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg=
google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw=

View File

@@ -0,0 +1,123 @@
package main
import (
"fmt"
"log"
"net/http"
"strconv"
"time"
"github.com/prometheus/client_golang/prometheus"
"github.com/prometheus/client_golang/prometheus/promauto"
"github.com/prometheus/client_golang/prometheus/promhttp"
"golang.org/x/exp/rand"
)
func randomValues(max int) func() (string, bool) {
i := 0
return func() (string, bool) {
i++
return strconv.Itoa(i), i < max+1
}
}
func staticList(input []string) func() string {
return func() string {
i := rand.Intn(len(input))
return input[i]
}
}
type dimension struct {
label string
getNextValue func() string
}
func main() {
fakeMetrics := []dimension{
{
label: "cluster",
getNextValue: staticList([]string{"prod-uk1", "prod-eu1", "prod-uk2", "prod-eu2", "prod-uk3", "prod-eu3", "prod-uk4", "prod-eu4", "prod-uk5", "prod-eu5"}),
},
{
label: "namespace",
getNextValue: staticList([]string{"default", "kube-api", "kube-system", "kube-public", "kube-node-lease", "kube-ingress", "kube-logging", "kube-metrics", "kube-monitoring", "kube-network", "kube-storage"}),
},
{
label: "pod",
getNextValue: staticList([]string{"default"}),
},
{
label: "container",
getNextValue: staticList([]string{"container"}),
},
{
label: "method",
getNextValue: staticList([]string{"GET", "POST", "DELETE", "PUT", "PATCH"}),
},
{
label: "address",
getNextValue: staticList([]string{"/", "/api", "/api/dashboard", "/api/dashboard/:uid", "/api/dashboard/:uid/overview", "/api/dashboard/:uid/overview/:id", "/api/dashboard/:uid/overview/:id/summary", "/api/dashboard/:uid/overview/:id/summary/:type", "/api/dashboard/:uid/overview/:id/summary/:type/:subtype", "/api/dashboard/:uid/overview/:id/summary/:type/:subtype/:id"}),
},
{
label: "extra_label_name1",
getNextValue: staticList([]string{"default"}),
},
{
label: "extra_label_name2",
getNextValue: staticList([]string{"default"}),
},
{
label: "extra_label_name3",
getNextValue: staticList([]string{"default"}),
},
{
label: "extra_label_name4",
getNextValue: staticList([]string{"default"}),
},
{
label: "extra_label_name5",
getNextValue: staticList([]string{"default"}),
},
{
label: "extra_label_name6",
getNextValue: staticList([]string{"default"}),
},
}
dimensions := []string{}
for _, dim := range fakeMetrics {
dimensions = append(dimensions, dim.label)
}
opsProcessed := promauto.NewCounterVec(prometheus.CounterOpts{
Name: "fakedata_highcard_http_requests_total",
Help: "a high cardinality counter",
}, dimensions)
http.Handle("/metrics", promhttp.Handler())
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
w.WriteHeader(http.StatusOK)
w.Write([]byte("Hello, is it me you're looking for?"))
})
go func() {
for {
labels := []string{}
for _, dim := range fakeMetrics {
value := dim.getNextValue()
labels = append(labels, value)
}
opsProcessed.WithLabelValues(labels...).Inc()
time.Sleep(time.Millisecond)
}
}()
fmt.Printf("Server started at :9111\n")
log.Fatal(http.ListenAndServe(":9111", nil))
}

View File

@@ -1,6 +1,6 @@
# README for the image storage WebDAV docker block
This block is used for testing the [WebDAV](https://grafana.com/docs/grafana/latest/setup-grafana/configure-grafana/#external_image_storagewebdav) option for external image storage which is used in [alert notifications](https://grafana.com/docs/grafana/latest/alerting/manage-notifications/images-in-notifications/). This uses the simplest WebDav server that is still being maintained, a project called [Dufs](https://github.com/sigoden/dufs).
This block is used for testing the [WebDAV](https://grafana.com/docs/grafana/latest/setup-grafana/configure-grafana/#external_image_storagewebdav) option for external image storage which is used in [alert notifications](https://grafana.com/docs/grafana/latest/alerting/configure-notifications/template-notifications/images-in-notifications/). This uses the simplest WebDav server that is still being maintained, a project called [Dufs](https://github.com/sigoden/dufs).
## Using Dufs

View File

@@ -1,19 +1,23 @@
apiVersion: 1
apps:
- type: myorg-extensions-app
- type: grafana-extensionstest-app
org_id: 1
org_name: Main Org.
disabled: false
- type: myorg-a-app
jsonData:
apiUrl: http://default-url.com
secureJsonData:
apiKey: secret-key
- type: grafana-extensionexample1-app
org_id: 1
org_name: Main Org.
disabled: false
- type: myorg-b-app
- type: grafana-extensionexample2-app
org_id: 1
org_name: Main Org.
disabled: false
- type: myorg-extensionpoint-app
- type: grafana-extensionexample3-app
org_id: 1
org_name: Main Org.
disabled: false

6
docs/.codespellignore Normal file
View File

@@ -0,0 +1,6 @@
aks
eror
iam
wan
[Operato Windrose](https://grafana.com/grafana/plugins/operato-windrose-panel/)
sergent

View File

@@ -1,6 +1,4 @@
#!/bin/sh
# shellcheck disable=SC2034
#
# The source of this file is https://raw.githubusercontent.com/grafana/writers-toolkit/main/docs/make-docs.
# # `make-docs` procedure changelog
#
@@ -8,26 +6,6 @@
# [Semantic versioning](https://semver.org/) is used to help the reader identify the significance of changes.
# Changes are relevant to this script and the support docs.mk GNU Make interface.
#
# ## 8.4.0 (2025-01-27)
#
# ### Fixed
#
# - Correct mount for the /docs/grafana-cloud/send-data/fleet-management/ project.
#
# ## 8.3.0 (2024-12-27)
#
# ### Added
#
# - Debug output of the final command when DEBUG=true.
#
# Useful to inspect if the script is correctly constructing the final command.
#
# ## 8.2.0 (2024-12-22)
#
# ### Removed
#
# - Special cases for Oracle and Datadog plugins now that they exist in the plugins monorepo.
#
# ## 8.1.0 (2024-08-22)
#
# ### Added
@@ -35,7 +13,7 @@
# - Additional website mounts for projects that use the website repository.
#
# Mounts are required for `make docs` to work in the website repository or with the website project.
# The Makefile is also mounted for convenient development of the procedure in that repository.
# The Makefile is also mounted for convenient development of the procedure that repository.
#
# ## 8.0.1 (2024-07-01)
#
@@ -312,7 +290,6 @@ PODMAN="$(if command -v podman >/dev/null 2>&1; then echo podman; else echo dock
if ! command -v curl >/dev/null 2>&1; then
if ! command -v wget >/dev/null 2>&1; then
# shellcheck disable=SC2016
errr 'either `curl` or `wget` must be installed for this script to work.'
exit 1
@@ -320,7 +297,6 @@ if ! command -v curl >/dev/null 2>&1; then
fi
if ! command -v "${PODMAN}" >/dev/null 2>&1; then
# shellcheck disable=SC2016
errr 'either `podman` or `docker` must be installed for this script to work.'
exit 1
@@ -367,10 +343,6 @@ EOF
exit 1
fi
# The following variables comprise a pseudo associative array of project names to source repositories.
# You only need to set a SOURCES variable if the project name does not match the source repository name.
# You can get a key identifier using the `identifier` function.
# To look up the value of any pseudo associative array, use the `aget` function.
SOURCES_as_code='as-code-docs'
SOURCES_enterprise_metrics='backend-enterprise'
SOURCES_enterprise_metrics_='backend-enterprise'
@@ -380,16 +352,13 @@ SOURCES_grafana_cloud_alerting_and_irm_slo='slo'
SOURCES_grafana_cloud_k6='k6-docs'
SOURCES_grafana_cloud_data_configuration_integrations='cloud-onboarding'
SOURCES_grafana_cloud_frontend_observability_faro_web_sdk='faro-web-sdk'
SOURCES_grafana_cloud_send_data_fleet_management='fleet-management'
SOURCES_helm_charts_mimir_distributed='mimir'
SOURCES_helm_charts_tempo_distributed='tempo'
SOURCES_opentelemetry='opentelemetry-docs'
SOURCES_plugins_grafana_datadog_datasource='datadog-datasource'
SOURCES_plugins_grafana_oracle_datasource='oracle-datasource'
SOURCES_resources='website'
# The following variables comprise a pseudo associative array of project names to versions.
# You only need to set a VERSIONS variable if it is not the default of 'latest'.
# You can get a key identifier using the `identifier` function.
# To look up the value of any pseudo associative array, use the `aget` function.
VERSIONS_as_code='UNVERSIONED'
VERSIONS_grafana_cloud='UNVERSIONED'
VERSIONS_grafana_cloud_alerting_and_irm_machine_learning='UNVERSIONED'
@@ -397,21 +366,20 @@ VERSIONS_grafana_cloud_alerting_and_irm_slo='UNVERSIONED'
VERSIONS_grafana_cloud_k6='UNVERSIONED'
VERSIONS_grafana_cloud_data_configuration_integrations='UNVERSIONED'
VERSIONS_grafana_cloud_frontend_observability_faro_web_sdk='UNVERSIONED'
VERSIONS_grafana_cloud_send_data_fleet_management='UNVERSIONED'
VERSIONS_opentelemetry='UNVERSIONED'
VERSIONS_plugins_grafana_datadog_datasource='latest'
VERSIONS_plugins_grafana_oracle_datasource='latest'
VERSIONS_resources='UNVERSIONED'
VERSIONS_technical_documentation='UNVERSIONED'
VERSIONS_website='UNVERSIONED'
VERSIONS_writers_toolkit='UNVERSIONED'
# The following variables comprise a pseudo associative array of project names to source repository paths.
# You only need to set a PATHS variable if it is not the default of 'docs/sources'.
# You can get a key identifier using the `identifier` function.
# To look up the value of any pseudo associative array, use the `aget` function.
PATHS_grafana_cloud='content/docs/grafana-cloud'
PATHS_helm_charts_mimir_distributed='docs/sources/helm-charts/mimir-distributed'
PATHS_helm_charts_tempo_distributed='docs/sources/helm-charts/tempo-distributed'
PATHS_mimir='docs/sources/mimir'
PATHS_plugins_grafana_datadog_datasource='docs/sources'
PATHS_plugins_grafana_oracle_datasource='docs/sources'
PATHS_resources='content'
PATHS_tempo='docs/sources/tempo'
PATHS_website='content'
@@ -663,7 +631,7 @@ POSIX_HERESTRING
case "${_project}" in
# Workaround for arbitrary mounts where the version field is expected to be the local directory
# and the repo field is expected to be the container directory.
# and the repo field is expected to be the container directory.
arbitrary)
echo "${_project}^${_version}^${_repo}^" # TODO
;;
@@ -833,16 +801,10 @@ case "${image}" in
| sed "s#$(proj_dst "${proj}")#sources#"
EOF
if [ -n "${DEBUG}" ]; then
debg "${cmd}"
fi
case "${OUTPUT_FORMAT}" in
human)
if ! command -v jq >/dev/null 2>&1; then
# shellcheck disable=SC2016
errr '`jq` must be installed for the `doc-validator` target to work.'
# shellcheck disable=SC2016
note 'To install `jq`, refer to https://jqlang.github.io/jq/download/,'
exit 1
@@ -875,10 +837,6 @@ EOF
/hugo/content/docs
EOF
if [ -n "${DEBUG}" ]; then
debg "${cmd}"
fi
case "${OUTPUT_FORMAT}" in
human)
${cmd} --output=line \

View File

@@ -1,5 +1,4 @@
---
draft: true
keywords:
- grafana
- announcement
@@ -52,9 +51,6 @@ To create or update an announcement banner, follow these steps:
1. Select the banner's end date and time in the **Ends at** field.
By default, the banner is displayed indefinitely.
You can set a date and time for the banner to stop displaying.
1. Select the banner's visibility.
**Everyone** - The banner is visible to all users, including on login page.
**Authenticated users** - The banner is visible to only authenticated users.
1. Select the type of banner in the **Variant** field.
This determines the color of the banner's background.
1. Click **Save** to save the banner settings.

View File

@@ -12,16 +12,18 @@ weight: 900
# Correlations
You can create interactive links for Explore visualizations to run queries related to presented data by setting up Correlations.
You can create interactive links for Explore visualizations by setting up Correlations. These links can either run queries or generate external URLs related to presented data.
A correlation defines how data in one [data source]({{< relref "../../datasources" >}}) is used to query data in another data source.
A correlation defines how data in one [data source]({{< relref "../../datasources" >}}) is used to query data in another data source or to generate an external URL.
Some examples:
- an application name returned in a logs data source can be used to query metrics related to that application in a metrics data source, or
- a user name returned by an SQL data source can be used to query logs related to that particular user in a logs data source
- a customer ID in a logs data source can link to a different platform that has a profile on that customer.
[Explore]({{< relref "../../explore" >}}) takes user-defined correlations to display links inside the visualizations.
You can click on a link to run the related query and see results in [Explore Split View]({{< relref "../../explore#split-and-compare" >}}).
If a correlation links to a query, you can click on that link to run the related query and see results in [Explore Split View]({{< relref "../../explore#split-and-compare" >}}).
If a correlation links to an external URL, you can click on the link to open the URL in a new tab in your browser.
Explore visualizations that currently support showing links based on correlations:

View File

@@ -8,67 +8,63 @@ labels:
products:
- enterprise
- cloud
title: Team LBAC
title: Label Based Access Control (LBAC) for data sources
weight: 100
---
# Team LBAC
# Label Based Access Control (LBAC) for data sources
Team Label Based Access Control (LBAC) simplifies and streamlines data source access management based on team memberships.
Label Based Access Control (LBAC) simplifies and streamlines data source access management based on team memberships.
{{< admonition type="note" >}}
Creating Team LBAC rules is available for preview for logs with Loki in Grafana Cloud.
LBAC rules is available for preview for logs with Loki in Grafana Cloud.
Report any unexpected behavior to the Grafana Support team.
To use Team LBAC rules you must enable the `teamHttpHeaders` feature toggle because the feature uses HTTP headers for the LBAC rules requests.
- Be sure that you are running Grafana Enterprise.
{{< /admonition >}}
To use LBAC rules you must enable the `teamHttpHeaders` feature toggle because the feature uses HTTP headers for the LBAC rules requests.
{{< /admonition >}}
You can configure user access based upon team memberships using LogQL.
Team LBAC controls access to logs depending on the rules set for each team.
LBAC for data sources controls access to logs depending on the rules set for each team.
This feature addresses two common challenges faced by Grafana users:
1. Having a high number of Grafana Cloud data sources.
Team LBAC lets Grafana administrators reduce the total number of data sources per instance from hundreds, to one.
LBAC for data sources lets Grafana administrators reduce the total number of data sources per instance from hundreds, to one.
1. Using the same dashboard across multiple teams.
Team LBAC lets Grafana Teams use the same dashboard with different access control rules.
LBAC for data sources lets Grafana Teams use the same dashboard with different access control rules.
To set up Team LBAC for a Loki data source, refer to [Configure Team LBAC](https://grafana.com/docs/grafana/<GRAFANA_VERSION>/administration/data-source-management/teamlbac/configure-teamlbac-for-loki/).
To set up LBAC for data sources for a Loki data source, refer to [Configure LBAC for data sources](https://grafana.com/docs/grafana/<GRAFANA_VERSION>/administration/data-source-management/teamlbac/configure-teamlbac-for-loki/).
## Limitations
- There is a set number of rules to be configured within a datasource, depending on the size of the rules.
- There is a set number of rules to be configured within a data source, depending on the size of the rules.
- Around ~500-600 rules is the upper limit.
- If there are no Team LBAC rules for a user's team, that user can query all logs.
- If an administrator is part of a team with Team LBAC rules, those rules are applied to the administrator requests.
- Cloud Access Policies (CAP) LBAC rules override Team LBAC rules.
Cloud Access Policies are the access controls from Grafana Cloud.
If there are any CAP LBAC rules configured for the same data source, then only the CAP LBAC rules are applied.
- If there are no LBAC for data sources rules for a user's team, that user can query all logs.
- If an administrator is part of a team with LBAC for data sources rules, those rules are applied to the administrator requests.
- Cloud Access Policy (CAP) LBAC rules override LBAC for data sources rules.
CAP are the access controls from Grafana Cloud.
You must remove any label selectors from your Cloud Access Policies to use Team LBAC.
For more information about CAP label selectors, refer to [Use label-based access control (LBAC) with access policies](https://grafana.com/docs/grafana-cloud/account-management/authentication-and-permissions/access-policies/label-access-policies/).
You must remove any label selectors from your Cloud Access Policy that is configured for the Loki data source, otherwise the CAP label selectors override the LBAC for data sources rules. For more information about CAP label selectors, refer to [Use label-based access control (LBAC) with access policies](https://grafana.com/docs/grafana-cloud/account-management/authentication-and-permissions/access-policies/label-access-policies/).
## Data source permissions
Data source permissions allow the users access to query the data source.
Administrators set the permissions at the data source level.
All the teams and users that are part of the data source inherit those permissions.
- Data source permissions allow the users access to query the data source.
- Administrators set the permissions at the data source level.
- All the teams and users that are part of the data source inherit those permissions.
## Recommended setup
It's recommended that you create a single Loki data source for using Team LBAC rules so you have a clear separation of data sources using Team LBAC and those that aren't.
It's recommended that you create a single Loki data source for using LBAC for data sources rules so you have a clear separation of data sources using LBAC for data sources and those that aren't.
All teams should have with only teams having `query` permission.
You should create another Loki data source configured without Team LBAC for full access to the logs.
You should create another Loki data source configured without LBAC for data sources for full access to the logs.
## Team LBAC rules
## LBAC rules
Grafana adds Team LBAC rules to the HTTP request via the Loki data source.
Grafana adds LBAC for data sources rules to the HTTP request via the Loki data source.
If you configure multiple rules for a team, each rule is evaluated separately.
Query results include lines that match any of the rules.
Only users with data source `Admin` permissions can edit Team LBAC rules in the **Data source permissions** tab because changing LBAC rules requires the same access level as editing data source permissions.
Only users with data source `Admin` permissions can edit LBAC for data sources rules in the **Data source permissions** tab because changing LBAC rules requires the same access level as editing data source permissions.
To set up Team LBAC for a Loki data source, refer to [Configure Team LBAC](https://grafana.com/docs/grafana/<GRAFANA_VERSION>/administration/data-source-management/teamlbac/configure-teamlbac-for-loki/).
To set up LBAC for data sources for a Loki data source, refer to [Configure LBAC for data sources](https://grafana.com/docs/grafana/<GRAFANA_VERSION>/administration/data-source-management/teamlbac/configure-teamlbac-for-loki/).

View File

@@ -1,5 +1,5 @@
---
description: Configure Team LBAC for Loki data source on Grafana Cloud
description: Configure LBAC for data sources for Loki data source on Grafana Cloud
keywords:
- loki
- datasource
@@ -7,42 +7,41 @@ keywords:
labels:
products:
- cloud
title: Configure Team LBAC for Loki
title: Configure LBAC for data sources for Loki
weight: 250
---
# Configure Team LBAC for Loki data source on Grafana Cloud
# Configure LBAC for data sources for Loki data source on Grafana Cloud
Team LBAC is available in private preview on Grafana Cloud for Loki created with basic authentication. Loki datasources for Team LBAC can only be created, provisioning is currently not available.
LBAC for data sources is available in private preview on Grafana Cloud for Loki created with basic authentication. Loki data sources for LBAC for data sources can only be created, provisioning is currently not available.
You cannot configure LBAC rules for Grafana-provisioned data sources from the UI. Alternatively, you can replicate the setting of the provisioned data source in a new data source as described in [LBAC Configuration for New Loki Data Source](https://grafana.com/docs/grafana/latest/administration/data-source-management/teamlbac/configure-teamlbac-for-loki/#task-1-lbac-configuration-for-new-loki-data-source) and then add the LBAC configuration to the new data source.
## Before you begin
To be able to use Team LBAC rules, you need to enable the feature toggle `teamHttpHeaders` on your Grafana instance. Contact support to enable the feature toggle for you.
To be able to use LBAC for data sources rules, you need to enable the feature toggle `teamHttpHeaders` on your Grafana instance. Contact support to enable the feature toggle for you.
- Be sure that you are running Grafana Enterprise.
- Be sure that you have the permission setup to create a loki tenant in Grafana Cloud
- Be sure that you have the permission setup to create a Loki tenant in Grafana Cloud
- Be sure that you have admin data source permissions for Grafana.
### Permissions
We recommend that you remove all permissions for roles and teams that are not required to access the data source. This will help to ensure that only the required teams have access to the data source. The recommended permissions are `Admin` permission and only add the teams `Query` permissions that you want to add Team LBAC rules for.
We recommend that you remove all permissions for roles and teams that are not required to access the data source. This will help to ensure that only the required teams have access to the data source. The recommended permissions are `Admin` permission and only add the teams `Query` permissions that you want to add LBAC for data sources rules for.
## Task 1: Configure Team LBAC for a new Loki data source
## Task 1: LBAC Configuration for New Loki Data Source
1. Access Loki data sources details for your stack through grafana.com
1. Copy Loki Details and Create a CAP
1. Copy Loki details and create a CAP
- Copy the details of your Loki setup.
- Create a Cloud Access Policy (CAP) for the Loki data source in grafana.com.
- Ensure the CAP includes `logs:read` permissions.
- Ensure the CAP does not include `labels` rules.
1. Create a New Loki Data Source
1. Create a new Loki data source
- In Grafana, proceed to add a new data source and select Loki as the type.
1. Navigate back to the Loki data source
- Set up the Loki data source using basic authentication. Use the userID as the username. Use the generated CAP token as the password.
- Save and connect.
1. Navigate to Data Source Permissions
- Go to the permissions tab of the newly created Loki data source. Here, you'll find the Team LBAC rules section.
1. Navigate to data source permissions
- Go to the permissions tab of the newly created Loki data source. Here, you'll find the LBAC for data sources rules section.
For more information on how to setup Team LBAC rules for a Loki data source, refer to [Create Team LBAC rules for the Loki data source](https://grafana.com/docs/grafana/<GRAFANA_VERSION>/administration/data-source-management/teamlbac/create-teamlbac-rules/).
For more information on how to setup LBAC for data sources rules for a Loki data source, refer to [Create LBAC for data sources rules for the Loki data source](https://grafana.com/docs/grafana/<GRAFANA_VERSION>/administration/data-source-management/teamlbac/create-teamlbac-rules/).

View File

@@ -1,42 +1,41 @@
---
description: Learn how to create Team LBAC rules for the Loki data source.
description: Learn how to create LBAC for data sources rules for the Loki data source.
keywords:
- loki
- lbac
- team
labels:
products:
- enterprise
- cloud
title: Create Team LBAC rules for the Loki data source
title: Create LBAC for data sources rules for the Loki data source
weight: 250
---
# Create Team LBAC rules for the Loki data source
# Create LBAC for data sources rules for the Loki data source
Team LBAC is available on Cloud for data sources created with basic authentication. Any managed Loki data source can **NOT** be configured with Team LBAC rules.
LBAC for data sources is available on Cloud for Loki data sources created with basic authentication. Managed/Provisioned Loki data source can **NOT** be configured with LBAC for data sources as of now.
## Before you begin
To be able to use Team LBAC rules, you need to enable the feature toggle `teamHttpHeaders` on your Grafana instance. Contact support to enable the feature toggle for you.
To be able to use LBAC for data sources rules, you need to enable the feature toggle `teamHttpHeaders` on your Grafana instance. Contact support to enable the feature toggle for you.
- Be sure that you are running Grafana Enterprise.
- Be sure that you have the permission setup to create a Loki tenant in Grafana Cloud.
- Be sure that you have admin data source permissions for Grafana.
- Be sure that you have a team setup in Grafana.
### Create a Team LBAC Rule for a team
### Create a LBAC for data sources Rule for a team
1. Navigate to your Loki datasource
1. Navigate to your Loki data source
1. Navigate to the permissions tab
- Here, you'll find the Team LBAC rules section.
1. Add a Team LBAC Rule
- Add a new rule for the team in the Team LBAC rules section.
1. Define Label Selector for the Rule
- Here, you'll find the LBAC for data sources rules section.
1. Add a LBAC for data sources Rule
- Add a new rule for the team in the LBAC for data sources rules section.
1. Define a label selector for the rule
- Add a label selector to the rule. Refer to Loki query documentation for guidance on the types of log selections you can specify.
### LBAC rule
A LBAC rule is a `logql` query that runs as a query to the loki instance for your logs. Each rule is it's own filtering operating independently from the other rules within a team. For example, you can create a label policy that includes all log lines with the label.
A LBAC rule is a `logql` query that runs as a query to the Loki instance for your logs. Each rule operates independently as its own filter, separate from other rules within a team. For example, you can create a label policy that includes all log lines with a specific label.
One rule `{namespace="dev", cluster="us-west-0"}` created with multiple namespaces will be seen as `namespace="dev"` **AND** `cluster="us-west-0"`.
Two rules `{namespace="dev"}`, `{cluster="us-west-0"}` created for a team will be seen as `namespace="dev"` **OR** `cluster="us-west-0"`.
@@ -47,11 +46,11 @@ We recommend you only add `query` permissions for teams that should use the data
We recommend for a first setup, setting up as few rules as possible for each team and make them additive for simplicity.
For validating the rules, we recommend testing the rules in the Loki Explore view. This will allow you to see the logs that would be returned for the rule.
To validate the rules, we recommend testing the rules in the Loki Explore view. This will allow you to see the logs that would be returned for the rule.
#### Tasks
### Task 1: One rule setup for each team
### Task 1: One rule set up for each team
One common use case for creating an LBAC policy is to have specific access to logs that have a specific label. For example, you can create a label policy that includes all log lines with the label.
@@ -67,9 +66,9 @@ A user that is part of Team B will have access to logs that match `namespace="pr
A user that is part of Team A and Team B will have access to logs that match `namespace="dev"` OR `namespace="prod"`.
### Task 2: One rule setup for a team Exclude a label
### Task 2: Set up a rule to exclude a label for a team
One common use case for creating an LBAC policy is to exclude logs that have a specific label. For example, you can create a label policy that excludes all log lines with the label secret=true by adding a selector with `secret!="true"` when you create an access policy:
One common use case for creating an LBAC policy is to exclude logs that have a specific label. For example, you can create a label policy that excludes all log lines with the label `secret=true` by adding a selector with `secret!="true"` when you create an access policy:
We have one team, Team A `Query` permissions. Loki access is setup with `Admin` roles to have `Admin` permission only.
@@ -77,7 +76,7 @@ We have one team, Team A `Query` permissions. Loki access is setup with `Admin`
A user that is part of Team A will **NOT** have access to logs that match `secret!="true"`.
### Task 3: Multiple rules setup for one team
### Task 3: Set up multiple rules for a team
We have two teams, Team A and Team B with `Query` permissions. Loki access is setup with `Admin` roles having `Admin` permission.
@@ -113,7 +112,7 @@ A user in Team B will have access to logs that match `namespace!="dev"`.
> _NOTE:_ A user that is part of Team A and Team B will have access to all logs that match `namespace="dev"` `OR` `namespace!="dev"`.
### Task 5: One rule setup for a Team
### Task 5: Single rule setup for a team
We have two teams, Team A and Team B. Loki access is setup with `Editor`, `Viewer` roles to have `Query` permission.

View File

@@ -35,9 +35,9 @@ To activate your license, complete the following tasks.
For more information about deploying an application on Amazon ECS, refer to [Creating an Amazon ECS service](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/create-service.html).
1. As you create the Amazon ECS service, use the Grafana Enterprise version 8.3.0 or later container image.
1. As you create the Amazon ECS service, use the intended Grafana Enterprise container image version.
For example, enter `grafana/grafana-enterprise:8.3.3`.
For example, enter `grafana/grafana-enterprise:11.3.0`.
> Only Grafana Enterprise versions 8.3.0 and later support licenses granted through AWS Marketplace.

View File

@@ -20,7 +20,7 @@ weight: 200
# Activate a Grafana Enterprise license from AWS Marketplace on EKS
If you have purchased a Grafana Enterprise subscription through AWS Marketplace, you must activate it in order to use Grafana Enterprise data source plugins and features in Grafana.
If you have purchased a Grafana Enterprise subscription through AWS Marketplace, you must activate it to use Grafana Enterprise data source plugins and features in Grafana.
## Before you begin:
@@ -37,9 +37,9 @@ To activate your license, complete the following tasks:
For more information about installing Grafana on Kubernetes using the Helm Chart, refer to the [Grafana Helm Chart](https://github.com/grafana/helm-charts/tree/main/charts/grafana#readme).
1. Use `kubectl set image deployment/my-release grafana=grafana/grafana-enterprise:<version>` to update the container image to Grafana Enterprise version 8.3.0 or later.
1. Use `kubectl set image deployment/my-release grafana=grafana/grafana-enterprise:<version>` to update the container image.
For example, enter `grafana/grafana-enterprise:8.3.3`.
For example, enter `grafana/grafana-enterprise:11.3.0`.
> Only Grafana Enterprise versions 8.3.0 and later support licenses granted through AWS Marketplace.

Some files were not shown because too many files have changed in this diff Show More