Frontend tests / Unit tests (${{ matrix.chunk }} / 8) (1) (push) Waiting to runDetails
Frontend tests / Unit tests (${{ matrix.chunk }} / 8) (2) (push) Waiting to runDetails
Frontend tests / Unit tests (${{ matrix.chunk }} / 8) (3) (push) Waiting to runDetails
Frontend tests / Unit tests (${{ matrix.chunk }} / 8) (4) (push) Waiting to runDetails
Frontend tests / Unit tests (${{ matrix.chunk }} / 8) (5) (push) Waiting to runDetails
Frontend tests / Unit tests (${{ matrix.chunk }} / 8) (6) (push) Waiting to runDetails
Frontend tests / Unit tests (${{ matrix.chunk }} / 8) (7) (push) Waiting to runDetails
Frontend tests / Unit tests (${{ matrix.chunk }} / 8) (8) (push) Waiting to runDetails
Integration Tests / Sqlite (push) Waiting to runDetails
Integration Tests / MySQL (push) Waiting to runDetails
Integration Tests / Postgres (push) Waiting to runDetails
publish-technical-documentation-next / sync (push) Waiting to runDetails
Run dashboard schema v2 e2e / dashboard-schema-v2-e2e (push) Waiting to runDetails
Verify Storybook / Verify Storybook (push) Waiting to runDetails
Dispatch sync to mirror / dispatch-job (push) Waiting to runDetails
* feat: pass read-only props to extension components
This initial commit is used to verify that things are broken in case
the datasource object is not cloned before passed in as a prop.
* chore: update tests
---------
Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
* remove prometheusUsesCombobox feature toggle
* betterer
* fix the unit test
* create MetricsLabelsSection unit tests
* fix unit tests
* fix unit tests in PromQueryBuilder.test.tsx
* prettier
* remove timeouts
* Revert "remove timeouts"
This reverts commit 84af1fd46b.
* Add FiredAt field to the State
* Update featuretoggle files
* Fix lint errors
* Fix test compilation
* Remove random print line + formatting
* Address PR comments
* Add user-facing feature toggle functionality for the new alerting list view
- Implemented `useFeatureToggle` hook to manage feature toggles using local storage.
- Added unit tests for `useFeatureToggle` to verify behavior for various toggle states.
- Updated `RuleList` components to utilize the new feature toggle for alerting list view.
- Introduced `RuleListPageTitle` component to handle toggling between list views with a badge indicator.
* Add tests
* Fix imports and remove unused code
* Add a new feature flag for list v2 preview button
* Hide v2 preview button behind the new feature flag
* Update list v2 feature toggle stage
* Alerting: List view feature toggle button PR review (#104161)
* Add test for undefined feature toggles case
* Tweak tests to use test utils and user
* Add i18n for toggle button and tweak props spreading
* Update translations
---------
Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
* fix: mark `exploreMetricsUseExternalAppPlugin` as not frontend-only
* docs: explicitly show feature toggle in docs
* Revert "docs: explicitly show feature toggle in docs"
This reverts commit 292ce7f7e8.
* Initial API client for ScopesNavigation
* Display scopes navigation items and group them
* Remove refactored component
* Fix link highlighting
* Underline on focus
* Set icons based un URL path
* Remove explicit icon names
* Add links to copy
* Map dashboardbinding to scopeNavigation in folder generation
* Consolidate dashboardbindings and scopenavigations to a single way of handling
* Let fetchDashboards handle all fetching
* Move endpoint types to core
* Remove comments
* Fix import
* Rename name to id
* Update translation
* Add feature toggle
* Fix tests
* Fix go.mod for some reason
---------
Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
* add column guid to alert rule table and rule_guid to rule version table
+ populate the new field with UUID
* update storage and domain models
* patch GUID
* ignore GUID in fingerprint tests
* get alert rule versions by GUID
* update rule delete to reset uid in history instead of deleting rows
* add test
* Update delete rule to require UserUID, remove all versions and create "delete" version
that holds information about who and when deleted the rule
* update usages of the delete method
* add list deleted rules to store
* list api to support deleted query parameter
* add list deleted rules to store
^ Conflicts:
^ pkg/services/ngalert/store/alert_rule_test.go
* list api to support deleted query parameter
* Restore deleted rules
* fix recovering manually recording rules
* update role control for the trash route
* add alertingRuleRecoverDeleted feature toggle enabled by default
* fix access control for trash menu item in the navtree
* Add alertingRuleRecoverDeleted feature toggle,
add Delete permanently alert rule menu option
* hide remove permanently functionality in the UI until we have the api available for it
* discard wrong changes after merging
* Reverted changes in pkg/apis/dashboard_manifest.go after fixing conflicts
* Reverted changes in go.work.sum after fixing conflicts
* Reverted changes in pkg/apis/dashboard_manifest.go after fixing conflicts
* Reverted changes in pkg/services/ngalert/models/alert_rule.go after fixing conflicts
* Reverted changes in pkg/apis/dashboard_manifest.go after fixing conflicts
* restore delete permanently and add the queryparam for it
* update snapshots
* fix translations
* protect trash route by the feature toggles
* use the new rulerRuleType for checks
* revert ability to delete permanently and alert rule from the ui
* remove unnecessary update after reverting
* fix ff
* add tracking
* use recently deleted instead of trash
* create isRecoverDeletedRulesEnabled for checking ffs
* address pr feedback 1
* include alert rule uid in getRowId
* use RulerGrafanaRulesConfigDTO for deleted rules response
* use isLoading in the AlertingPageWrapper
* fix wrong check for recording rules type
* add test for restoring manually through the alert rule form
* add test for restoring deleted rule
* use importAlertingComponent
* udpate mock
* address pr feedback
* update translations
* address feedback
* address feedback 2
* address feedback 3
* address feedback 4
* move transformation of the response to the endpoint
* fix typo
* refactor grafanaRuleDtoToFormValues
* update translations
* use guid for identifying rows
* prettier
* use ONLY the guid for identifying rows
* Add provides/invalidates tags for deleted rules
---------
Co-authored-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com>
Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
* CI: Allow Bench conversion to fail
We shouldn't mark PRs and commits as X if they fail to convert logs with Bench.
* Fix: Prints should always include new lines
* fix: remove unused import
* remove feature flag alertingAlertmanagerExtraDedupStage
* use most recent version of fork of alertmanager
---------
Co-authored-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com>
* Remove aggregate by
* Update betterer
* Run toggles test
* Add back group by in schema so it can be checked for
* Show error if group by
* Update error message
* Allow user to remove the group by from the query
* Fix assertion
---------
Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
* remove feature flag
* remove feature flag in state manager
* make sure no data with empty results is handled
Signed-off-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com>
---------
Signed-off-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com>
* remove action set feature toggle
* don't pass feature toggles to action set service instantiation
* linting
* test fixes and frontend clean-up
* fix test
* wip: Create a proxy state manager to avoid complexity
* Read path redirecting
* add tests for unified dashboard API
* add tests
* Contemplate both formats in DashboardProxy
* Fix force old
* Fix tests for proxy
* catch errors
* Save as V2 when dynamic dashboard is enabled
* Improve tests
* Remove feature toggle
* Use kubernetesDashboards for e2e suite
* Fix issue when loading snapshots
* Fix typescript errors
* Integrate with backend conversion error
* Remove legacy annotation
* fix snapshot loading; lint
* Add missing hideTimeControls
* fix test
* make setupDashboardAPI to all suites
* refactor getDashboardAPI
* Add tests
* fix DashboardScenePage tests
* fix tests
* fix go tests
* Refactor to understand better the need of transforming to v2 to compare
* Fix detect changes logic
* yes status from schema gen
---------
Co-authored-by: alexandra vargas <alexa1866@gmail.com>
Co-authored-by: Haris Rozajac <haris.rozajac12@gmail.com>
* Add newLanguages feature toggle
* add additional languages behind feature toggle
* be more forgiving of what config looks like in tests
* tweak regex
* put pt-br back
* restore order of pt-BR and cn-Hans, rename EXTRA_LANGUAGES to NEW_LANGUAGES
* stricter test regex
* Alerting: Allow selection of recording rule write target on per-rule basis.
Introduces a new feature flag (`grafanaManagedRecordingRulesDatasources`),
disabled by default, to enable the ability to write recording rules data using
data source settings, and selecting the data source to use on a per-rule basis.
To cope with the scenario of users upgrading, a configuration file option
allows setting the default data source to use, if none is specified in the rule,
emulating the behaviour of recording rules without the flag enabled.
* Lint
* Update conf/sample.ini
Co-authored-by: Alexander Akhmetov <me@alx.cx>
---------
Co-authored-by: Alexander Akhmetov <me@alx.cx>
* add feature toggle alertRuleRestore
* Update delete rule to require UserUID, remove all versions and create "delete" version that holds information about who and when deleted the rule
* feat(featuremgmt): introduce feature toggle for enabling sri checks
* feat(frontend): use assetSriChecks feature toggle to inject integrity hash into script tags
* chore(webpack): align sri algorithms across dev and prod builds
* docs(featuremgmt): update assetSriChecks to pass CI
* docs(featuremgmt): fix more spelling complaints with assetSriChecks
* Add crossorigin attribute
* chore(webpack): add subresource-integrity plugin
* build(webpack): wrap webpack jsonp loader integrity checks in feature flag checks
* revert(index.html): remove crossorigin attribute if assertSriChecks is disabled
---------
Co-authored-by: Kristian Bremberg <kristian.bremberg@grafana.com>
* Restore feature: wip
* Refactor modal to separate component
* fix restoring from the drawer
* rename components folder to version-history, and move version-utils.file there
* skip fetching rule when uid is empty, add returnTo when restoring manually
* Fix drawer fetching infinitely
* Move drawer to separate file
* add tracking for restore success and restore failure
* Fix name of error interaction
* Add `compare` to each row in version history
* Add warning when manually restoring and trigger form validation
* Fix initial validation for contact point selector
* Wait for successful fetch before potential error
* Add disabled state when loading
* Fix loading check for contact point selector
* Fix typo
* Move hook to separate file and move other method into utils
* Update imports and remove manual state management
* Fix infinite render
* Remove onError from dep array
* Use separate flag for showing manual restore alert
* Rename to createdAt
* add and use ability to restore to check if retore is allowed
* Fix test and add isGrafanaManagedAlertRule to the ability check
* Address PR feedback
* Change to isManualRestore for trigger check
* udpate AlertRuleAction.Restore ability
* make the alertingRuleVersionHistoryRestore ff , enabled by default
* fix ff
---------
Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
* RBAC: Remove accessControlOnCall feature toggle
* Leave the other one in place
* Tests
* frontend
* Readd empty ft to frontend test
* Remove legacy RBAC check
* Fix test
* no need for context
* Remove unused variable
* Remove unecessary param
* remove unecessary param from tests
* More tests :D
* Add alertingRuleVersionHistory feature toggle
* WIP: Add version history tab
* revert temp change in index.ts
* wip2
* --wip--
* sync code with the BE changes in the endpoint
* add translations
* Add translations
* use ff only for restore feature
* WIP: Add tracking, make version required, and start mapping dif results
Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
* Tweak more translations and improve types
* Add button to show/hide JSON diff
* update type for top level rule fields
* Create types
* Make updated_by/version properties optional
* Update mocks to remove updated by and version
* add comments to restore code
* rename fetature flag, as we use this one only for the restore feature
* Update version history to handle special cases
* Add diff numbers
* Fix conflicts
* Move generic computeVersionDiff to a utils file
* Update DOM structure of version summary and tidy up types
* Add tests for version comparison logic
* Lint fix utils file
* Rename props and add docs
* Change to EmptyState and log when no versions
* Remove CreatedBy component and simplify
* Add missing i18n for version history
* add test for computeVersionDiff
* update test
* fix number diff order and add a test
* fix prettier
* fix prettier
* Add promise resolve back in
* Rename to humanReadableDiff and tweak translation
* Show tab for recording rules as well
* Split components out to separate files
* Add optional interval seconds
* Update i18n
* Remove commented code
* Remove value
* Remove unneeded version
* Consistent rendering of updated by
* Mode parseVersionInfo to a separate pure function
* update invalidate/provide tags for getAlertVersionHistory
* Use checkedVersions state only in the parent component
* update getSpecialUidMap name and create an interface
* Fix prettier
* update tab description
* use set instead of map for checkedVersions
---------
Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
* Add Jira integration to cloud AMs
* Add alertingJiraIntegration feature toggle for jira integration
* Update integration name to Jira Service Management
* address pr comments
* gen ff
* add project to the getReceiverDescription for jira
* Update getReceiverDescription for jira
* update text
* update texts and add required option
* Add conversion for fields jira integration to JSON format in the dto and viceversa
* add tests
* Add translation for jira receiver summary
* Add placeholder for Jira duration option
* move logic cheking integrtion type outside the conversion method
---------
Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
* Under feature flag `sqlExpressions` and is experimental
* Excluded from arm32
* Will not work with the Query Service yet
* Does not have limits in place yet
* Does not working with alerting yet
* Currently requires "prepare time series" Transform for time series viz
---------
Co-authored-by: Sam Jewell <sam.jewell@grafana.com>
* create new toggle
* add survey link behind feature toggle
* fix translations
* better theme structure
* add all the themes back
* update matrix
* fix mars contrast
* fix color contrast probs with tron
* fix a11y issues with synthwave/victorian themes
* fix aubergine/zen
* rename green + gold
* rename to space
* rename, only enable 4 for grafanacon
* add survey link
* fix info color in sapphiredusk
* handle extra themes in storybook
* Create base components
* Create measurement service
* Add container for list
* Use measurement to render virtualized log lines
* Match rendered styles in 2d context for measuring
* Improve virtualization initialization and handle resize
* Introduce log line processing
* Virtualization: fix measurement of lines with line endings
* Virtualization: include scrollbar width in calculation
* Remove logs
* Virtualization: optimize text measurement
* Add support for forceEscape
* Log line: properly style wrapped/unwrapped lines
* Virtualization: handle possible overflows
* Improve overflow handling
* LogList: remove scroll position ref
* Remove logs
* Remove log
* Add top/bottom navigation buttons
* Add timestamp to pre-processing
* Add showtime support
* Fix imports
* Chore: simplify dedup
* Show level
* Refactor measurement and measure level and timestamp
* Virtualization: skip unnecessary measurements
* Improve measurements to minimize overflow chance
* Introduce logline colors
* Update palette
* Remove pretiffying
* Add comment
* Remove unused variable
* Add color for info level
* Fix dependencies
* Refactor overflow to account for smaller estimations
* Debounce resizing
* Fix imports
* Further optimize height calculation
* Remove outline
* Unused import
* Use less under/overflow method
* Respond to height changes
* Refactor size adjustment to account for layout changes
* Add Logs Panel support
* Add margin bottom to log lines
* Remove unused option
* LogList: container div should never be null
Bad API design
* Log List: make app not undefined and update containerElement usages
* New Logs Panel: Create as new visualization (#99427)
* Logs Panel: clean up old panel
* Logs Panel New: create as new visualization
* Plugin: mark as alpha
* Logs panel new: hold container in a state variable
* Logs panel: fix no data state
* Create newLogsPanel feature flag
* Logs: use new feature flag
* Prettier
* Add new panel to code owners
* Logs Navigation: add translations
* Address betterer issues
* Fix import
* Extract translations
* Update virtualization.ts
* Virtualization: add DOM fallback for text measurement
* Run gen-cue
* plugins_integration_test: add logs-new to expected plugins
* add feature flag
* puts search permission filtering behind a feature flag
* fixes issue with doc match id. When the match is for an in-memory index, the internal id is a string (this is what we expected). However, when its a file-based index, the internal id is a binary encoded int64 that point to something internally. So to get the id, we need to use ExternalID() instead of relying on the indexInternalID to be the correct format.
* adds debug log
* update comment
* formatting
* feat: datasource connections tab in plugin detail page
* test: no ds defined test added
* feat: configure feature toggle
* chore: i18n extract
* test: added unit tests for page and list
Refactor folder service to use Unified Storage
Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
---------
Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
Co-authored-by: Stephanie Hingtgen <stephanie.hingtgen@grafana.com>
* add two dummy feature toggles to use for testing potential AB testing setup
* update betterer
* update auto generated files
* fix camelcase test case
* Put move and counts behid a feature flag
* Gen toggles
* Generate feature flag
* Make feature name more explicit
* Remove unused code
* Update toggle name
wire up the ui to the new search api
Co-authored-by: Scott Lepper <scott.lepper@gmail.com>
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Dan Cech <dcech@grafana.com>
* fix: handling of special chars
* docs: add clarity
* fix: escaping
* refactor: put changes behind new feature toggle
* docs: use consistent comment style
* refactor: rename feature toggle for brevity
* use single quotes
* fix unit tests
* remove redundant json entry
* fix: keep all changes behind feature toggle
* fix: support builder mode
* fix: don't escape when using regex operators
* fix: code mode label values completions with special chars
* refactor: remove unneeded changes
* move feature toggle up so new changes from main won't conflict with ours
* fix: escape label values in metric select scene
* refactor: ensure changes are behind feature toggle
---------
Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>
* Wire up sprinkles to oss and enterprise. Fetching sprinkles not implemented yet.
* Adds wireset for initializing document builders. Had to init it when creating the service to avoid cyclical imports.
* updates to int64 for stats
* adds config for sprinklesApiServer and gets sprinkles from there when its present
* add comment for later
* adds feature toggle for sprinkles. returns empty results when flag not enabled.
* adds unified storage config setting for sprinkles apiserver page limit
* fixes bug where dashboard uid was not getting set
* when creating dashboard summary, use metadata.name as the dashboard uid
* cleans up wire. use existing oss and enterprise sets to generate doc builders
* remove old wireset
* fix linter - adds missing arg for doc builders
* update dashboard stats in tests
* updates test-data dashboards
* log a warning instead of returning an error if we can't get sprinkles for a namespace
* dont read uid from dashboard json
* structure apic
* API versioning proposal
* Make api service independent from version
* Update v2
* Fix public dashboards page test
* Uncomment reload dashboard feature code
* Revert
* Betterer
* Fix imports
* useV2DashboardsAPI feature toggle
* POC/v2 schema: Add v1<-> v2 transformers (#97058)
* Make dshboard access interface more precise
* Add first pass for schema v1<->v2 transformers
* Update response transformer test
* Import fixes
* Manage dashboards validation: Handle v2 schema
* Handle new dashboard with v2
* Fix tests
* Move dashboard is folder error handling to legacy API implementation
* Add tests for dashboard api client
* betterer
* Use dashboard DTO when capturing dashbaord impression
* prettier
* Dashboard API: resolve folder metadata
* Add tests for resolving folder metadata
* Fix DashboardPicker
* Renames and nits
* POC Alternative Suggestion for Dashboard API versions handling (#97789)
* Add transitional_dashboard_api, reset components that are not ready for v2 schema, and start working on migrating
DashboardPicker to use v2 schema
* reset DashboardScenePageStateManager
* Improve logic in transitional api, also remove isDashboardResource checks from components
* REmove transitional_dashboard_api and apply PR feedback
* Apply PR feedback, use 'v2' as a parameter and remove unnecesary if
* Fix tests
* Adding missing comments from original PR and also changing order to improve diffing in github :)
* update betterer
* fix prettier
* Add tests for DashboardPicker
* Do not use unified alerting mocks
* Fix unused type in dashboard test
* Improve comments in DahboardPicker
* Update folder validation fn
* Validation update
* Update legacy api test
* Lint
---------
Co-authored-by: alexandra vargas <alexa1866@gmail.com>
Co-authored-by: Alexa V <239999+axelavargas@users.noreply.github.com>
Co-authored-by: Ivan Ortega <ivanortegaalba@gmail.com>
* clean up almost all of the toggle
* betterer
* clean up searchBarHidden and extract translations
* fix remaining unit tests
* remove redundant topPosition
* Azure Monitor: Add a feature flag to toggle user auth for Azure Monitor only
* Fix condition for userIdentityEnabled
* Re-add removed test
* Remove unused prop
* Refactor onAuthTypeChange in AzureCredentialsForm
* Add frontend unit tests
* Lint
* Feature toggles: remove lokiMetricDataplane
* Framing: remove test cases expecting metricDataplane to be false
* Remove test code
* Chore: rename test cases
* initial passwordless client
* passwordless login page
* Working basic e2e flow
* Add todo comments
* Improve the passwordless login flow
* improved passwordless login, backend for passwordless signup
* add expiration to emails
* update email templates & render username & name fields on signup
* improve email templates
* change login page text while awaiting passwordless code
* fix merge conflicts
* use claims.TypeUser
* add initial passwordless tests
* better error messages
* simplified error name
* remove completed TODOs
* linting & minor test improvements & rename passwordless routes
* more linting fixes
* move code generation to its own func, use locationService to get query params
* fix ampersand in email templates & use passwordless api routes in LoginCtrl
* txt emails more closely match html email copy
* move passwordless auth behind experimental feature toggle
* fix PasswordlessLogin property failing typecheck
* make update-workspace
* user correct placeholder
* Update emails/templates/passwordless_verify_existing_user.txt
Co-authored-by: Dan Cech <dcech@grafana.com>
* Update emails/templates/passwordless_verify_existing_user.mjml
Co-authored-by: Dan Cech <dcech@grafana.com>
* Update emails/templates/passwordless_verify_new_user.txt
Co-authored-by: Dan Cech <dcech@grafana.com>
* Update emails/templates/passwordless_verify_new_user.txt
Co-authored-by: Dan Cech <dcech@grafana.com>
* Update emails/templates/passwordless_verify_new_user.mjml
Co-authored-by: Dan Cech <dcech@grafana.com>
* use & in email templates
* Update emails/templates/passwordless_verify_existing_user.txt
Co-authored-by: Dan Cech <dcech@grafana.com>
* remove IP address validation
* struct for passwordless settings
* revert go.work.sum changes
* mock locationService.getSearch in failing test
---------
Co-authored-by: Mihaly Gyongyosi <mgyongyosi@users.noreply.github.com>
Co-authored-by: Dan Cech <dcech@grafana.com>