* get trace-view-scrolling working in playwright
* almost fix frontend-sandbox-datasource test
* properly fix frontend-sandbox-datasource tests
* convert migrate-to-cloud to playwright
* prometheus-variable-editor tests in playwright
* enable prometheus-config tests in playwright
* run on frontend changes
* skip test
* remove various-suite
* Table: Enable tableNextGen by default
* kill off tableNextGen feature flag
* i18n
* i18n
* i18n
* remove state beta from table panel
* fix migration for 0 decimals migration
* add explicit auto option bacjk
* match impl from previous migrations code
* try changing some selectors
* remove timezone test from Cypress
* fix PlaylistForm unit test
* fix some selectors
* clean up i18n, are these gridcells somehow?
* return a couple of selectors caught in the dragnet to being cell instead of gridcell
* fix i18n for en-US
* clean up gdevs now that wrapHeaderText has no default
* update role in e2e for when it is re-enabled
* Dashboards: New pathId concept to find panels not based on scene object key
* Minor fix
* fix test
* Fix test
* adding unit tests for pathId functions
* fix
* Fix link sharing to use new path
* fix
* Update
* No clone keys
* Remove all the clone keys complexity
* More changes
* update e2e test
* Progress
* fix auto grid item
* Finally working cannot move panel into clone row
* adjust how we find vizpanel for keyboard shortcuts
* Update
* Fix shortcuts
* Fix test
* fixing tests
* fix lint
* fix tests
* fix e2e
* adjust how outliine children are collected for auto and custom grids
* update
* Upgrade scenes
---------
Co-authored-by: oscarkilhed <oscar.kilhed@grafana.com>
Co-authored-by: Sergej-Vlasov <sergej.s.vlasov@gmail.com>
* add github workflow scaffolding
* update comments
* Add image and resource commands
* Add secrets paths
* Block workflow run for forks
* ignore via package.json, update CODEOWNERS
* fix workflow path
* remove old azure monitor test
* pull docker image first
* add permissions for docker pull step
* checkout first
* keep creds file
* try all in one job
* with creds...
* add cloud: 'azure'
* pass CLOUD to docker
* add -playwright
* actually use the env vars
* don't need to pass CLOUD env var
* remove commented out code and tidy up
* kick CI
* Update container names and set PLAYWRIGHT_CI
* Update path
* fix zizmor violation
* use bigger runner, add double quoting
* add separate command and increase timeout
* remove timeout
* parameterise the e2e command in CI
* move cloud-plugins-e2e-tests into normal e2e test workflow
* fix detect changes
* pass creds into dagger
* try remove quotes
* add a debug log
* exec playwright command after mounting file
* reassign e2eContainer, add change to check the tests fail correctly
* fix test
---------
Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
* update instantiations of OptionsPaneItemDescriptor to pass IDs - obvious changes
* update instantiations of OptionsPaneItemDescriptor to pass IDs - iffy changes
* update editors to pass ID through or note a missing label
* update playwright tests
* fix unit tests
* grafana ui components updated to pass ID through
* update components to pass ID through
* add missing input IDs
* better default ID handling
* remove TS note
* revert accidental non-html id change
* kick CI
* fix old-arch e2e tests
* change to plain useId calls
---------
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
* set the boot data config correctly
* tighten up grafana/data types
* kick CI
* restore dashboard scopes props
* revert back to class
* add some comments
* kick CI
* add comment
* add equivalent dashboard-time-zone test
* remove cypress dashboards-suite
* modify tests to work with schema-v2 + update workflow to run playwright instead
* fix package.json
* update CODEOWNERS
* fix start-server to include ARCH
* fix(canvas): style linter issue
* feat(canvas): update infinite viewer root element
* fix(canvas): resize element on moving
* fix(canvas): global element position
* fix(canvas): connection anchor position
* fix(canvas): connection position
* fix(canvas): connection coordinates calculation
* cleaning
* fix(canvas): calculation connection coordinates
* fix(canvas): initial connections svg position
* fix(canvas): align connection with new coordinates system
* fix(canvas): temporary element position fix
* comment
* Canvas: Fix canvas selecto (#104621)
* fix(canvas): get context back
* fix(canvas): selecto containers
* clean up
* Canvas: Fix jumpy elements behaviour on select and drag (#104641)
fix(canvas): jumpy elements behaviour on select and drag
* fix(canvas): connection regression (#104682)
* Canvas pan + zoom: Updated mouse interactions (#104648)
* feat: canvas panel pan + zoom key binds
* feat: panning when right click + ctrl
* chore: some cleanup
* chore: adjust mouse move delta by canvas scale
* Canvas: Zoom to content (#104950)
feat(canvas): zoom to content
* Canvas pan + zoom: Unique key for canvas panel elements (#104947)
fix: unique keys
* Canvas: Placement adjustment (#105117)
* feat(canvas): top/left placement migration
* feat(canvas): adjust constraint system for pan and zoom usage
* feat(canvas): support other constraints
* Canvas: Align connection anchors and element rotation (#106002)
* feat(canvas): align connection anchors and element rotation
* clean up
* clean-up math
* Canvas: Disable pan when pan+zoom toggle is false (#106224)
chore: no pan when pan+zoom toggle is disabled
* Canvas: Fix desync between scene and InfiniteViewer zoom/position on element addition (#106655)
feat(canvas): keep pan and zoom state to re-apply
* Canvas: Clicking on metricValue dropdown does not work; right-click triggers context menu instead (#106701)
fix(canvas): metricValue left click dropdown
* Canvas: Double-click on canvas should reset scale and position (#106709)
fix(canvas): dblclick to reset zoom
* Canvas: Put new canvas pan and zoom under feature toggle (#107001)
* feat(canvas): put pan and zoom under FF
* clean-up
* clean-up
* fix(canvas): clear selection on scene manipulation
* fix(canvas): any types
* Canvas: Fix canvas apply styles (#107404)
* fix(canvas): apply styles
* remove deps
* Canvas: E2E test coverage (#107474)
* betterer
* feat(canvas): sceneAbleManagement tests
* feat(canvas): playwright tests
* chore(canvas): add draft e2e tests
* chore(canvas): clean draft e2e tests
* chore(canvas): fix draft e2e tests
* chore(canvas): todo comments
* chore(canvas): update e2e tests
* chore(canvas): delete scene unit tests
* chore(canvas): delete sceneAbleManagement unit tests
* chore(canvas): delete sceneAbleManagement unit tests
* chore(canvas): linter
* chore(canvas): locales
* chore(canvas): remove flag checking
* Fix canvas connection point z-indexing bug (#107223)
fix(canvas): hoist connect points one level higher in DOM to fix z-index
* Revert "Fix canvas connection point z-indexing bug" (#108146)
Revert "Fix canvas connection point z-indexing bug (#107223)"
This reverts commit e419cb164a.
* Canvas: Set canvas zoom range (#108318)
* chore(canvas): set zoom range
* chore(canvas): naming
* Canvas: Fix infinite-viewer connections viewport values (#108315)
chore(canvas): infinite-viewer connections viewport values
* Canvas: Fix z-indices order and explicit pointer events (#108284)
* fix(canvas-connection-points): z-indices order, explicit pointer events
* chore(canvas): remove user select
* chore(canvas): naming
* chore(canvas): create ConnectionAnchor2 component
---------
Co-authored-by: Ihor Yeromin <yeryomin.igor@gmail.com>
* Canvas: Hide anchors on panel resize (#108588)
chore(canvas): hide anchors on panel resize
* Canvas: Center & scale select, resize, zoom bugs (#108749)
* Canvas: Fix center and scale constraint with zoom
* Remove unused resize flag
* Consolidate and clean up
* fix(canvas): re-size scale and center elements
---------
Co-authored-by: Ihor Yeromin <yeryomin.igor@gmail.com>
* Canvas: Fix on constraint change during zoom (#108947)
* Canvas: Ensure correct panel size during edit (#108953)
* chore(canvas): re-gen cue
---------
Co-authored-by: drew08t <drew08@gmail.com>
Co-authored-by: Sven Grossmann <svennergr@gmail.com>
Co-authored-by: Alex Spencer <52186778+alexjonspencer1@users.noreply.github.com>
Co-authored-by: Jesse David Peterson <jesdavpet@users.noreply.github.com>
Co-authored-by: Drew Slobodnjak <60050885+drew08t@users.noreply.github.com>
* Revert "Revert: Future-proofing query and data source model in Dashboard Sche… (#107985)"
This reverts commit 13a89d4ae3.
* Revert "Revert "Schema V2: Simplify annotations v1<->v2 conversions" (#107984)"
This reverts commit 2b8c5bea1a.
* make gen apps
* e2e update
* Use v2alpha2 by default (#108177)
* Use v2alpha2 by default
* Apply only DS changes to alpha2
* Use v2alpha2 by default except to query
* Create a v2 index in @grafana/schema
* Update path and apply lint
* Update tests
* Update imports to v2 status
* Fix failing openapi test
* Schemav2 breaking changes: conversion implementation (#108224)
* provision v2alpha1 dashboard
* Run conversions for DS refactor
* Run snapshot testing on conversions
* Normalize output name
* Update snapshots to include all panel and variable cases
* fix lint
* fix lint
* fix test and go lint
* more go lint
---------
Co-authored-by: Ivan Ortega <ivanortegaalba@gmail.com>
Co-authored-by: Haris Rozajac <haris.rozajac12@gmail.com>
* Schema v2: Introduce group/datasource convention to GroupBy and AdHoc variable (#108237)
* Schema v2: Introduce group/datasource convention to GroupBy and AdHoc variables
* add conversion
* App Installer: Authorizer support (#108419)
* Chore: use `satisfies` and remove a load of `any`s (#108397)
use satisfies and remove a load of anys
* improve logging and fail unified-storage migration with more than 0 errors (#108471)
improve logging and fail unified-storage migration with more than 0 errors
* fix conversion test
* Secrets: Create more granular fixed roles for SecureValues (#108382)
* Provisioning: Fix bug in job progress recording (#108440)
Fix bug in job progress recording
* Provisioning: Fix ImportAllPanelsFromLocalRepository test (#108441)
* Provisioning: Skip flaky test
* Fix flaky provisioning test
* Fix lint
---------
Co-authored-by: Roberto Jimenez Sanchez <roberto.jimenez@grafana.com>
* BulkDeleteProvisionedResource: Move progress bar into a second step (#108417)
* Move progress bar into a second step
---------
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
* [Dashboard Schema Codegen] Move dashboard CUE codegen block back up into kind body (#108476)
[Dashboard Schema Codegen] Move dashboard CUE codegen block back up into kind body to make sure new versions have the same settings.
---------
Co-authored-by: Haris Rozajac <haris.rozajac12@gmail.com>
Co-authored-by: Todd Treece <360020+toddtreece@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Will Assis <35489495+gassiss@users.noreply.github.com>
Co-authored-by: Matheus Macabu <macabu@users.noreply.github.com>
Co-authored-by: Roberto Jiménez Sánchez <jszroberto@gmail.com>
Co-authored-by: Roberto Jimenez Sanchez <roberto.jimenez@grafana.com>
Co-authored-by: Yunwen Zheng <yunwen.zheng@grafana.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
Co-authored-by: Austin Pond <IfSentient@users.noreply.github.com>
Co-authored-by: Ivan Ortega <ivanortegaalba@gmail.com>
* Dashboard Schema V2: Refactor VizConfigKind to follow DataQueryKind convention (#108148)
* Dashboards API: Register v2alpha2 API
* Prepare conversion functions
* Fix test
* Refactor VizConfigKind to follow DataQueryKind convention
* fix tests
* use new dataquerykind convention alpha 2
* add conversion
* fix tests
* fix tests
* fix another test
* Fix merge
---------
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
* fix k8s codegen
* Update e2e-playwright/dashboards/TestV2Dashboard.json
* Update e2e/dashboards/TestV2Dashboard.json
* revert app generation for non-related apps
* try again
* another try
* also revert folder and secret app generation
* v2alpha1 provisioned dashboard
* Fix kind
* Fix conversion snapshots
* Update API discovery registry
* Rename to v2beta1
* Rename migrations
* Update apps/dashboard/pkg/apis/dashboard/v2beta1/doc.go
Co-authored-by: Stephanie Hingtgen <stephanie.hingtgen@grafana.com>
* Ensure conditional rendering and other non changed properties
---------
Co-authored-by: Ivan Ortega <ivanortegaalba@gmail.com>
Co-authored-by: Haris Rozajac <haris.rozajac12@gmail.com>
Co-authored-by: Todd Treece <360020+toddtreece@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Will Assis <35489495+gassiss@users.noreply.github.com>
Co-authored-by: Matheus Macabu <macabu@users.noreply.github.com>
Co-authored-by: Roberto Jiménez Sánchez <jszroberto@gmail.com>
Co-authored-by: Roberto Jimenez Sanchez <roberto.jimenez@grafana.com>
Co-authored-by: Yunwen Zheng <yunwen.zheng@grafana.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
Co-authored-by: Austin Pond <IfSentient@users.noreply.github.com>
Co-authored-by: Haris Rozajac <58232930+harisrozajac@users.noreply.github.com>
Co-authored-by: Stephanie Hingtgen <stephanie.hingtgen@grafana.com>
Run dashboard schema v2 e2e / dashboard-schema-v2-e2e (push) Waiting to runDetails
Shellcheck / Shellcheck scripts (push) Waiting to runDetails
Swagger generated code / Verify committed API specs match (push) Waiting to runDetails
Dispatch sync to mirror / dispatch-job (push) Waiting to runDetails
Trivy Scan / trivy-scan (push) Waiting to runDetails
Documentation / Build & Verify Docs (push) Has been cancelledDetails
publish-kinds-next / main (push) Has been cancelledDetails
publish-technical-documentation-next / sync (push) Has been cancelledDetails
Verify Storybook (Playwright) / Verify Storybook (Playwright) (push) Has been cancelledDetails
Verify Storybook / Verify Storybook (push) Has been cancelledDetails
trigger-dashboard-search-e2e / trigger-search-e2e (push) Has been cancelledDetails
* Table: Force tableNextGen to be true for Playwright and false for Cypress
* RDG query for body text contains the headers too
* add some simple tests for row height
* dial in the row height test a little more
* more updates
* filters, pagination
* try this on CI
* more updates to the tests
* more tests
* wait for some sort stuff to flush
* replace class selectors for rdg
* target the click to the anchor in the header
* separate playwright into its own folder
* better separation
* add login scenario, add tags
* remove ui option
* update CODEOWNERS
* add a panels suite test
* migrate queries test to playwright
* rename + add dashlist test
* add panelEdit_base
* add geomap map controls test
* add geomap-layer-types
* add geomap-spatial-operations tests
* add frontend-sandbox-panel tests
* add smoke-tests-suite
* add comment about adding datasource
* add dashboard-browse-nested
* add dashboard-browse
* add dashboard-export-json
* add dashboard-keybindings test
* remove @wip tag
* turn on screenshots and add comment for why this test fails
* add dashboard-links-without-slug test
* try adding permissions in the test as well
* add dashboard-live-streaming
* context in the test doesn't work - sad
* create dashboard-public-templating
* add dashboard-public-create and make live streaming more resilient
* add share externally test
* add dashboard-share-internally
* add share-snapshot-create test
* add dashboard-templating
* add timepicker tests
* add embedded-dashboard test
* add general_dashboards test
* add import-dashboard test
* add load-options-from-url test
* add new-constant-variable test
* add custom-variable test
* add new-datasource-variable test
* add new-interval-variable test
* add text-box-variable test
* add new-query-variable test
* add horizontal repeat test
* add panel-vertical-repeat test
* add empty-row-repeat test
* add set-options-from-ui test
* add snapshot-create test
* add templating test
* add textbox-variables test
* add cloud-plugins-suite
* add storybook verification tests
* add playwright storybook verification workflow
* add playwright browsers
* update CODEOWNERS
* test change to trigger storybook verification workflows
* try container instead
* get the version right...
* go back to installing - less chance of forgetting to update
* Basic Github Actions
Squashed commit of the following:
commit f84c650a71
Author: joshhunt <josh.hunt@grafana.com>
Date: Tue Jul 1 13:23:46 2025 +0100
add arg for sharding, but not using it yet
commit 7bcf0512c6
Author: joshhunt <josh.hunt@grafana.com>
Date: Tue Jul 1 12:30:30 2025 +0100
less newline
commit b643911882
Author: joshhunt <josh.hunt@grafana.com>
Date: Tue Jul 1 12:24:31 2025 +0100
less logs
commit 38f871e9c2
Author: joshhunt <josh.hunt@grafana.com>
Date: Tue Jul 1 10:00:26 2025 +0100
fix yaml
commit db9a773136
Author: joshhunt <josh.hunt@grafana.com>
Date: Tue Jul 1 09:57:47 2025 +0100
clean up files
commit c0525f41fa
Author: joshhunt <josh.hunt@grafana.com>
Date: Tue Jul 1 09:44:56 2025 +0100
gha workflow
commit 895bea7c52
Author: joshhunt <josh.hunt@grafana.com>
Date: Mon Jun 30 19:33:08 2025 +0100
working dagger
commit cea1f84437
Author: joshhunt <josh.hunt@grafana.com>
Date: Mon Jun 30 16:17:46 2025 +0100
wip
* shard gha
* some tidy up
* add flags for exporting results, and a gha step to merge runs
* fix shard gha
* add dashboard-duplicate-panel test
* add dashboard-outline test
* add dashboards-add-panel
* remove some commented out code
* add dashboards-title-description test
* add dashboards-remove-panel
* don't install cypress
* gha: check playwright results
* add dashboards-edit-adhoc-variables test
* fix check-jobs
* add dagger cloud token
* add dagger cloud token
* add edit-datasource-variable test
* update CODEOWNERS
* add dashboards-edit-group-by-variables (skipped for now)
* add dashboards-edit-panel-title-description test
* add dashboards-edit-transparent-bg test
* add dashboards-edit-query-variables test
* run with 8 shards
* add dashboards-edit-variables
* tidy up gha
* add dashboard-group-panels
* fix action
* try to cache the grafana build
* fix missing action becuase no checkout, use builtin continue-on-error instead
* fix missing id
* cat out.txt
* debug build cache
* fix debug build cache
* add dashboards-panel-layouts test
* tidy up
* no more debug
* fix grafana dir
* add dashboards-move-panel test
* skip some failing tests
* mark up plugins tests with @plugins tag, only run @plugins tests in drone
* Hackathon/Playwright Conversion - Various Suite (#107516)
* Playwright Migration: Various Suite tests
* skipping bad tests
* fix some tests that can fail
* fix uid
* separate user for the verify-i18n test
* build test plugins for grafana server
* properly blur input fields
* login manually
* get dashboardPage from goto
* ignore a couple of type assertions
* remove a couple of timeouts
* remove timeouts on dashboard-share-internally
* use toBeHidden
* make dashboard-share-internally more stable
* remove TEMP_DAGGER_TOKEN
* clean up visaulization-suggestions
* unskip gauge test
* unskip trace-view-scrolling
* attempt to make create variable utils stable
* unskip loki tests
* make go linter happy
* unskip edit-group-by-variables test
* unskip move panel tests
* isolate dashboard-timepicker tests with separate user
* create data source as part of smoke test
* make sure we're awaiting in dashboard-edit-adhoc-variables
* make dashboards-edit-variables test more robust
* Hackathon Playwright: Dashboards Search (#107580)
* Hackathon Playwright: Dashboards Search
* Feedback changes
* make trace-view-scrolling more stable
* add json report and bench step
* fix bench version
* move fail step to after the playwright report so we can report test failures
* fix output file name
* fix typo
* try wrap in expect.poll
* stability
* bit more tidy up
* fix dashboard-new-layouts tests
* move test-plugins to e2e-playwright
* fix go code for drone e2e run
* move loki plugin-e2e test
* make v2 dashboards work again
---------
Co-authored-by: joshhunt <josh.hunt@grafana.com>
Co-authored-by: Josh Hunt <joshhunt@users.noreply.github.com>
Co-authored-by: Collin Fingar <collin.fingar@grafana.com>
Co-authored-by: Jeff Levin <jeff@levinology.com>
* feat(plugin-configs): update configs to work with nodes strip-types feature
* build(parca): use nodes experimental-strip-types so build works with node 22 - 24
* build(decoupled-plugins): support nodes strip types feature for webpack builds
* build(e2e-test-plugins): update build scripts and config to work with node strip types
* style(plugin-configs): fix import/order lint errors
* refactor(plugins): use allowImportingTsExtensions in favour of ts-ignore comments
* refactor(plugin-configs): clean up ts-ignore and ts-expect-error comments in webpack.config
* refactor(plugin-configs): fix up changes for nodes strip-types flag
* chore(loki): fix up build command for node 24 support
* Tidy up storybook a little bit
* change sort order, delete some stories
* More tidy up of actions
* More tidy up of actions
* tweak story sorting, again
* Make all internal stories public
* fix sort
* Add ESLint rule to enforce storybook titles
* update verify storybook test
* simplify glob
* WIP
* Update yarn.lock
* Align uuid dependency
* Add e2e test and update
* Update cue version
* Fix lint
* Update snapshot test
* Fix test that was importing from coupled module
* Fix lint
* Update public/app/plugins/datasource/loki/package.json
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
---------
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>