Commit Graph

568 Commits

Author SHA1 Message Date
John Troy 27a095a971
[release-12.0.5] LDAP: Restore test user mapping functionality (#111130)
LDAP: Restore test user mapping functionality (#110841)

* Migrate LdapPage from connect() to React-Redux hooks

* Convert LDAP debug page into a drawer and hook it into settings

* prettier

* Use the Text component and make the input and button look like they do on the main settings page.

* Bring back isLoading and put in a LoadingPlaceholder

* i18n-extract

* rejigger

* linter fix

(cherry picked from commit 585b53bc7d)
2025-09-15 15:28:45 -04:00
grafana-delivery-bot[bot] 2ce8b147d7
[release-12.0.1] Provisioning: Add onboarding page graphic (#104367)
Provisioning: Add onboarding page graphic (#104162)

* Provisioning: Add onboarding page graphic

* Update translations

(cherry picked from commit b6e5b5d20f)

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2025-04-23 06:18:15 +01:00
grafana-delivery-bot[bot] e94d5f0119
[release-12.0.1] Provisioning: Add banner with more feature info (#104146)
Provisioning: Add banner with more feature info (#104111)

* Provisioning: Add experimental feature banner

* translations

(cherry picked from commit d85d730d9c)

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2025-04-17 07:09:33 +01:00
Andres Martinez Gotor 048d164a3c
Advisor: Add redirection notice in data sources and plugins pages (#103894) 2025-04-14 15:40:16 +02:00
Juan Cabanas 5661cf244a
Invite User: Add invite user button in mega menu and command palette (#103934) 2025-04-11 19:00:06 -03:00
Nick Richmond 07a225649d
MetricsDrilldown: Remove legacy Metrics Drilldown code paths (#103845)
* chore: remove feature toggles

* chore: update labels

* chore: remove `public/app/features/trails` code

* fix: typo

* chore: update betterer results

* chore: update i18n
2025-04-11 16:45:14 -04:00
Haris Rozajac 5011907dae
Dashboard Schema V2: Export dashboard JSON (#101180)
* wip

* fix the async bug

* Fix tests

* support library panels

* Update comment

* clean up

* refactor, use multi resource kind

* uncomment

* return only the spec

* simplify templateizing logic

* update dashboardkind

* revert imprtable requirements to use the current interface

* tests and fixes

* add panel configs to required; more tests;

* everything in elements should be processed

* clean up

* clean up

* rename for clarity; clean up tests

* export resource v spec

* i18n

* clean unused

* fix library panels

* revert comments

* revert lefthook.rc

* don't support lib panels

* another lefhook revert

* remove lib panel in test

* Remove library panels on external export; show warning if dash contains library panels

* fix tests

* Support old export mode

* clean up

* rely on dash shape vs feature toggle, add spacing to alert, update message

* lint

* typo fix

* make makeExportable part of dashboard serializer; clean up old exporter

* clean up

* more cleanup

* gem file cleanup

* remove unused function

* remove unused selector

* don't remove ds refs that use ds template variable

* clean up
2025-04-11 13:35:39 -06:00
Tom Ratcliffe e71acd9ec3
Alerting: Stop allowing manual editing/restore of internal AM config via settings (#103884) 2025-04-11 16:23:28 +00:00
Matthew Jacobson 9f9c4b3da3
Alerting: Template preview enhancements (#103817)
API Changes:

- Fixes validation in template CRUD API to be closer to how the running 
  alertmanager will use the template. Should remove some incorrect 
  validation errors.

- Adds some missing default placeholder labels to receiver testing that 
  are used during template testing but missing during receiver testing


Template Preview:

- Replaced basic preview with a readonly CodeEditor for better whitespace 
  and alignment clarity (also adds support for future syntax highlighting 
  in template previews for upcoming webhook payload templates)

Template Selector (Receiver Form):

- Refactored to use same components as Template editor for preview.
- Fixed preview to work with multi-definition templates
- Fixed copy to correctly copy the template contents instead of 
  {{ template "<name>" . }}.

Template Editor:

- Fixed detection of when to display functions vs snippets in multi-line 
  expressions
2025-04-11 09:27:19 -04:00
Ryan McKinley 2c3422fc5c
Provisioning: return field paths in test error messages (#103850)
* Provisioning: Do not block connect step on error

* Display field errors

* Cleanup

* return field errors

* fix test

* convert errros to an array

* Fix history display

* Add getFormErrors

* metav1 issues

* lint

* Proper field names

* Fix notification

* Remove unused component

---------

Co-authored-by: Clarity-89 <homes89@ukr.net>
2025-04-11 14:26:42 +01:00
Bogdan Matei 35e78feffa
Dynamic Dashboards: Add repeats for tabs (#103348) 2025-04-11 13:50:44 +03:00
Konrad Lalik 0a8dccc19a
Alerting: New alert list filter improvements (#103107)
* Move filtering code to generators for performance reasons

Discarding rules and groups early in the iterable chain limits the number of promises we need to wait for which improves performance significantly

* Add error handling for generators

* Add support for data source filter for GMA rules

* search WIP fix

* Fix datasource filter

* Move filtering back to filtered rules hook, use paged groups for improved performance

* Add queriedDatasources field to grafana managed rules and update filtering logic to rely on it

- Introduced a new field `queriedDatasources` in the AlertingRule struct to track data sources used in rules.
- Updated the Prometheus API to populate `queriedDatasources` when creating alerting rules.
- Modified filtering logic in the ruleFilter function to utilize the new `queriedDatasources` field for improved data source matching.
- Adjusted related tests to reflect changes in rule structure and filtering behavior.

* Add FilterView performance logging

* Improve GMA Prometheus types, rename queried datasources property

* Use custom generator helpers for flattening and filtering rule groups

* Fix lint errors, add missing translations

* Revert test condition

* Refactor api prom changes

* Fix lint errors

* Update backend tests

* Refactor rule list components to improve error handling and data source management

- Enhanced error handling in FilterViewResults by logging errors before returning an empty iterable.
- Simplified conditional rendering in GrafanaRuleLoader for better readability.
- Updated data source handling in PaginatedDataSourceLoader and PaginatedGrafanaLoader to use new individual rule group generator.
- Renamed toPageless function to toIndividualRuleGroups for clarity in prometheusGroupsGenerator.
- Improved filtering logic in useFilteredRulesIterator to utilize a dedicated function for data source type validation.
- Added isRulesDataSourceType utility function for better data source type checks.
- Removed commented-out code in PromRuleDTOBase for cleaner interface definition.

* Fix abort controller on FilterView

* Improve generators filtering

* fix abort controller

* refactor cancelSearch

* make states exclusive

* Load full page in one loadResultPage call

* Update tests, update translations

* Refactor filter status into separate component

* hoist hook

* Use the new function for supported rules source type

---------

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2025-04-11 10:02:34 +02:00
Torkel Ödegaard 1e669cbb45
AppChrome: Sidebar extensions button update (#103791)
* AppChrome: Sidebar app icon button update

* Update

* remove unused files

* Update public/app/core/components/AppChrome/ExtensionSidebar/ExtensionToolbarItem.tsx

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

* update

---------

Co-authored-by: Sven Grossmann <sven.grossmann@grafana.com>
2025-04-11 09:25:09 +02:00
Alex Khomenko 04fae8bd46
Provisioning: Update ConfigForm (#103846)
* Provisioning: Fix token permissions alignment

* Update config form

* Extract getDefaultValues
2025-04-11 08:33:11 +03:00
Sven Grossmann 05338838b0
Sidecar: Remove experimental Sidecar implementation (#103786)
* Sidecar: remove `appSidecar` feature toggle

* Sidecar: Remove sidecar implementation

* lint
2025-04-10 22:04:12 +02:00
Alex Khomenko 0bad0526f5
Provisioning: Simplify component logic (#103816) 2025-04-10 22:54:56 +03:00
Matias Chomicki 778d0b2da4
Logs: Clean up Explore meta information (#103801)
* LogLabels: add displayMax property

* MetaInfoText: prevent label wrapping

* LogsMetaRow: remove unescaped content and max characters

* LogsMetaRow: use font weight normal

* LogLabels: add button to collapse back

* LogsMetaRow: set line height

* LogsMetaRow: save common logs state

* LogsMetaRow: update unit tests

* LogLabels: update unit test

* LogListContext: add forceEscape option

* LogListContext: move forceEscape and hasUnescapedContents

* LogListControls: move forceEscape to controls

* LogList: read forceEscape from context

* i18n

* LogListControls: test new control

* Update betterer

* logsModel: update test

* LogLabels: replace characters with icons

* Prettier

* LogLabels: add aria labels

* i18n

* Update tests

* Update test
2025-04-10 19:47:17 +01:00
Sergej-Vlasov 828cd05f18
ConditionalRendering: Adjust naming and delete button alignment (#103677)
adjust naming and delete button alignment
2025-04-10 19:27:31 +01:00
Ashley Harrison c83c486c9b
Internationalisation: Lint rule improvement (#103788)
* improve autofix so it can fix foo={"bar"}

* apply fixes

* fix type checks + betterer

* tweak to make types happy
2025-04-10 16:22:52 +01:00
Sonia Aguilar b4442b4f22
Alerting: Detect target folder rules and show warning (#103673)
* detect target folder rules and show warning

* show detected rules in target folder in a collapsed section

* fix detecting rules that might be overwritten

* refactor

* remove undefined

* fix text
2025-04-10 16:18:20 +02:00
Oscar Kilhed 7c605f024f
Dynamic dashboards: Add paste panel back, change paste icon (#103780)
* Add paste panel back, change paste icon

* make i18n-extract
2025-04-10 14:59:20 +02:00
Ashley Harrison 8df9c57045
Internationalisation: More markup for translations (#103726)
* mark up variables/trails/transformers

* more markup

* fix unit tests

* final unit test fix
2025-04-10 13:52:46 +01:00
Dana Axinte 6fde69c333
CloudMigrations: Make improvements to the text content (#103770)
* change copy configuration

* comma and this token after token creation

* securely migrate and you'll need token

* add caret and modify steps

* period after check failed resources

* learn about migrating v1

* building snapshot reduce text

* right caret connect to a cloud stack

* building snapshot reduce text v2

* make i18n-extract after merge
2025-04-10 13:50:37 +01:00
Matheus Macabu b58b6e828e
CloudMigrations: Enable high-level resource type selection (#103011)
* CloudMigrations: Enable snapshot resource type configuration

* ConfigureSnapshot: Update resource type order

* ConfigureSnapshot: Add compile-time check for all resource types

* Fix trickier merge conflicts

* E2E: Fix intercept calls to get snapshot results to match new query params for sorting

* ConfigureSnapshot: Break text into newline

* ConfigureSnapshot: Add spacing on resources list

* Chore: Run betterer

* ConfigureSnapshot: Make secondary text bold

* ConfigureSnapshot: Update copy which resources to migrate

* ConfigureSnapshot: Add tooltip near build snapshot button with ETA
2025-04-10 14:14:13 +02:00
Torkel Ödegaard 9e28886372
Dashboard: Variables in outline (#103712)
* Update

* Progress

* update

* fixes

* Fixed crash
2025-04-10 13:28:07 +02:00
Alex Khomenko b58729dd65
Provisioning: Onboarding updates (#103722)
* Fix status badge URL

* Remove enhanced features from the overview page

* Update TokenPermissionsInfo.tsx

* Update ConnectionStep

* Update Bootstrap step

* Vertical stepper

* Show enhanced features

* Update step name

* Fix stale settings data

* Update steps

* Revert Field changes

* Do not require workflows

* Show disabled buttons

* Update final step's checkboxes

* Add translations

* Rename to RepositoryList

* Remove type select

* Merge pull and migrate steps

* Fix migration job

* Update text

* Update card text

* Fix repository link

* Update progress bar

* Refactor workflows into readOnly and prWorkflow

* Remove todos

* i18n

* Fix translation

* Update ConnectRepositoryButton.tsx

* Add form prompt

* Fix form prompt

* Fix GH-only fields

* Update copy

* Cleanup

* Add translations

* Update translations

* Update translations

* Fix title
2025-04-10 09:55:31 +03:00
Oscar Kilhed bc08e9cb4c
Dynamic dashboards: Extra confirmation before deleting tab or row with content (#103589)
* Extra confirmation before deleting tab with content

* also confirm rows

* make i18n-extract

* remake how the confirm works

* reset panel menu behavior

* update i18n, fix missing event

* fix lint
2025-04-09 19:01:43 +02:00
Laura Fernández 4849f87e82
i18n: Add `locale` to SharedPreferences (#103133) 2025-04-09 17:15:44 +02:00
Torkel Ödegaard 24474dcb9c
AppChrome: Improved responsive use of vertical space (#103488)
* Progress

* Progress

* Update

* Update

* Update

* Update

* Responsive improvements

* Update

* Update

* Update

* Revert height change

* Update

* add missing testid

* update

* Fixes

* update

* Refactoring

* fix bug in app chrome service

* Fixed e2e tests

* fix

* fix

* Update

* Update

* fix bookmarks e2e

* Update

* improve responsiveness on small screens for breadcrumbs

* Always use two levels when menu is docked

* Adding kiosk toggle button to dashboards only

* update

* Update

* Update

* when menu is docked and no actions use 1 level

* removed formatting change that caused unnessary diff in PR

* remove extra separator line after merge with main

* Fix double separators

* Update

* remove temp change

* Update
2025-04-09 14:51:22 +02:00
Torkel Ödegaard 927ce79dcf
Dashboard: Variable selection and editing (#103451)
* Variable selection

* Update

* fix

* Update

* Updates

* update

* Update
2025-04-09 14:27:35 +02:00
Pepe Cano 4eddeaec75
Alerting(ui-copy): update IRM contact point description when IRM is not installed (#103665) 2025-04-09 13:35:45 +02:00
Ashley Harrison a420e2f8f2
Internationalisation: More markup (#103634)
* some manual markup

* more markup

* update count names
2025-04-09 11:31:48 +01:00
Matheus Macabu 3fad6183aa
CloudMigrations: Create resource dependency map to validate snapshot request (#102594)
* CloudMigrations: Create resource dependency map to validate snapshot request

* CloudMigrations: Validate resource types dependencies in create snapshot request

* CloudMigrations: Update service interface to pass parsed resource types for creation

* CloudMigrations: Conditionally append resource to snapshot if enabled

* CloudMigrations: Add /cloudmigration/resources/dependencies endpoint

* CloudMigrations: Properly filter dashboards and folders from snapshot
2025-04-08 17:46:25 +02:00
Collin Fingar 1bbe970e59
QueryLibrary: Add From Library Icon Action (#103317)
* QueryLibrary: AddfromIcon init work

* Removed console log

* updated i18n

* Added unit tests for button

* Fixed linting

* Updates per feedback - new replace method

* Remove run query call when replace

* lint fixes

* Feedback + method renaming to 'replace'

* Fix await
2025-04-08 09:52:07 -04:00
Sonia Aguilar 1d5f51e383
Alerting: Skip rules that are managed by plugins when importing datasource-managed rules (#103573)
* skip rules that are managed by plugins when importing from data source rules to GMA

* update translations

* update text

* update translations

* handle no rules to import

* filter out rules instead of groups

* Reuse skipped rules alert

* update translations keys

* fix filter

---------

Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
2025-04-08 15:07:03 +02:00
Torkel Ödegaard 6f0daae0d8
AppChrome: Move kiosk button into profile menu (#103600)
* Move kiosk button to profile menu

* translation key
2025-04-08 14:50:24 +02:00
Michael Mandrus 0fd7dfeb2a
CloudMigrations: Implement table sorting in the UI (#103061)
* implement sorting

* swagger gen

* minor fixes

* clean up param reading

* add todo

* add errors only prop

* codegen stuff

* fix copy paste error

* forgot the api gen

* implement sorting on the frontend

* remove unused enums

* cleanup

* remove tests that are obe

* fix merge

* change page length based on checked box

* cleanup

* fix test

* i18n-extract

* var name tweaks

* use switch and conditional rendering instead of checkbox

* i18n-extract

* use initial sort

* fix type

* fix layout

* fix bugs

* make betterer happy

* fix var names
2025-04-08 08:14:17 -04:00
Torkel Ödegaard 15bb2637f4
Dashboard: Fixes and tweaks provisioning badge (#103522)
* Dashboard: Fixes and tweaks provisioning badge

* Update

* Update

* Update

* Update
2025-04-08 13:51:16 +02:00
Matheus Macabu ba653c22c3
CloudMigrations: Update footer copy to reflect a wider range of resources can be migrated (#103544) 2025-04-08 10:49:13 +02:00
Tom Ratcliffe c2af05c328
Alerting: Add missing_series_evals_to_resolve option to alert rule form (#102808)
* Add missing_series_evals_to_resolve option to alert rule form

* Fix tests and undefined behaviour

* Update translations

* Update translations

* Update falsy logic

* Remove null type

* Update tests

* Update details tab

* Add default value

* Remove null

* Update description text, add placeholder, remove default
2025-04-07 19:49:45 +01:00
Sonia Aguilar 71c66acb2d
Alerting: Add keep_firing_for and Recovering state (#103248)
* add keep_firing_for and Recovering state

* prettier

* translations

* remove unused component/file

* fix tests

* fix test

* prettier

* fix tests

* revert changes in go.work.sum

* remove recovering from cloud rules filters

* prettier

* fix padding

* fix wrong move in import

* update text

* fix filtering states in alert list panel

* update translations

* betterer

* address feedback

* translations

* fix tests

* prettier and betterer

* update betterer.results

* update translations

* update snapshot

* add divider in the alert rule form

* address feedback

* Improve translations

* Update .betterer.results

---------

Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
2025-04-07 17:13:04 +02:00
Matias Chomicki e2a6f9a849
Logs: Add new Controls component to Explore (#103401)
* ControlledLogRows: create component

* Fix imports

* ControlledLogRows: handle scroll events

* Rename storage key prop

* LogListControls: externally control syntax highlighting

* ControlledLogRows: add support for level filtering

* Logs: implement deduplication from controls

* Fix imports

* Create feature flag

* Use feature flag

* LogListControls: add download button

* LogsMetaRow: extract download function to logs utils

* Filter and download logs

* Update tests with new props

* LogList: pass logs and logs meta to context

* Remove prefix from downloaded file

* Update unit tests

* LogListControl: update unit tests

* Fix type assertion

* Fix imports

* Formatting

* i18n

* Fix test

* LogListControls: adjust scroll to top styles

* LogListContext: control legacy options

* LogListControls: add showUniqueLabels and prettifyJSON options

* LogListControls: test new controls

* Extract translations

* Hide old controls by feature flag

* LogListControls: update prettify json copy

* ControlledLogRows: disable preview

* Prettier

* LogListControls: Fix test
2025-04-07 16:38:55 +02:00
Torkel Ödegaard 46bf9e6551
Dashboard: Group layout and Grid layout categories and simplified radio toggle design (#103433)
* Group layout and more

* Change word

* Update

* changed names and added new translation keys

* Update

* Update

* revert color change

* update
2025-04-07 14:30:09 +02:00
Sonia Aguilar a05b35a13c
Alerting: Fix wrong interpolation in translation (#103514)
fix wrong interpolation in transalation
2025-04-07 13:41:04 +03:00
Ashley Harrison 0fc4f53fab
Internationalisation: More markup for translations (#103392)
* some more translations

* more markup

* more translations

* fix tests
2025-04-07 09:48:03 +01:00
Tom Ratcliffe a93e618102
Internationalisation: Auto mark-up Alerting's strings (#103354)
* Internationalisation: Auto mark-up Alerting code strings

* Update .betterer.results

* Revert prometheus duration docs change

* Fix duplicated import

* Remove unneeded translation
2025-04-04 15:56:10 +01:00
Tom Ratcliffe 3766deed34
Alerting: Import UI - Add folder creation & add to new list view (#103417)
* Update styling of import warning

* Update logic for picking recording rule target datasource, and default to chosen DS

* Add CreateNewFolder component

* Reuse folder creation logic inside alert rule form

* Update betterer and tweak jsdoc

* Add translation to folder selector and tidy up imports

* Allow specifying data source UID in query param

* Add import button to new list view on appropriate data sources

* Fix CI failures

* Update translation keys
2025-04-04 14:44:59 +01:00
Matias Chomicki 06c83f7d4d
New Logs Panel: Add LogListControl component (#102359)
* LogListNavigation: create component

* LogListNavigation: make it optional

* Refactor Navigation into Controls

* Explore Logs: hide old panel options

* LogListControls: add more controls and apply new styles

* LogListControls: update width

* Remove console log

* LogList: wrap component in context

* LogListContext: make it stateful

* LogListControls: connect with context

* LogListContext: sync displayed fields

* LogListContext: add syntax highlighting control

* LogLine: improve color with highlighting off

* LogListControls: improve button styles

* LogListControls: add sort order option

* LogListControls: add dedup strategy

* LogListContext: sync prop changes with state

* LogList: add option change callback

* LogListContext: sync external changes only when showControls is disabled

* LogListContext: unify sync effect

* LogListControls: improve buttons active css

* LogListContext: add optional storage support

* LogList: make syntaxHighlighting and read from store or default to true

* LogsPanel: add support for new options

* Generated file

* Update tests

* New Logs Panel: add showControls option

* LogList: make eventBus optional

* LogsPanel: expose syntaxHighlighting

* LogsPanel: expose grammar to plugins

* Remove incorrect legacy file

* LogListControls: allow options change with controls enabled in panel editor

* LogLine: apply no-highlighting class to ansi wrapper

* LogListControls: add frontend level filtering

* LogList: filter by filterLevels

* LogListControls: allow filterLevels in dashboards

* LogLine: update unit tests

* LogLineMenu: update unit test

* LogListControls: add unit test

* Revert

* LogList: add unit test

* LogList: add onLogRowHover support

* LogList: test hover events

* LogsPanel: add unit test

* LogLine: use theme color for errors

* LogLine: minor tweak to hover state

* Chore: fix test case name

* LogListControls: add border

* LogListControls: prevent default on wrap toggle click

* LogLine: switch info and debug colors

* ContentOutline + LogControls: sync displayed levels and minor outline improvements

* LogListContext: sync with external filterLevel changes

* Logs: work with arrays of LogLevel and not plain strings

* Fix type

* LogListControl: increase controls size
2025-04-04 14:53:12 +02:00
Alex Khomenko 5e02532073
Provisioning: Update onboarding page (#103436)
* Change feature name

* Update feature list

* Update connect button

* Update enhanced features

* Cleanup
2025-04-04 13:08:58 +03:00
Torkel Ödegaard 49ecd83b87
Dashboard: Ungroup action to remove row or tab (#103370)
* Dashboard: Ungroup action to remove row or tab

* Update
2025-04-04 12:07:58 +02:00