Commit Graph

87 Commits

Author SHA1 Message Date
Matheus Macabu
1bf35c97e5 CloudMigrations: fix flaky test on snapshot status (#96827)
* cloudmigration: uncomment flaky test

* cloudmigration: refactor test snapshot status
2024-11-25 09:28:00 +01:00
lean.dev
e9fae5bd7f CloudMigration: Create authapi service (#96581) 2024-11-21 20:46:06 +02:00
Roberto Jiménez Sánchez
7bfaf2a7bf [Cloud Migrations] Fix panic in unit tests (#96389)
* Fix panic in unit test

* Reset mock to new one between tests
2024-11-13 16:06:32 +02:00
Matheus Macabu
29ee90bc26 CloudMigrations: add parent folder name to alert rule resource (#96366) 2024-11-13 12:20:56 +01:00
Dana Axinte
924b0d0863 CloudMigration: Add user uid to on prem event collection (#94804)
* add useruid to report events

* test
2024-11-13 11:07:00 +00:00
lean.dev
750a0bed71 MigrationAssistant: Restrict dashboards, folders and datasources by the org id of the signed in user (#96339)
apply security patch: main/206-202410241510.patch
2024-11-12 13:03:16 -06:00
Roberto Jiménez Sánchez
7f99e943a6 Do not use the span recorder in test (#96324) 2024-11-12 17:55:53 +01:00
Roberto Jiménez Sánchez
fde9ddfc8c [Cloud Migration] Skip flaky cloud migration unit test (#96256)
Skip Flaky Cloud Migration test
2024-11-12 11:08:35 +01:00
Roberto Jiménez Sánchez
477326b9c3 [CloudMigrations] Fetch cloud migration status asynchronously (#96084)
* Single go-routine without touching too many lines.
* Fix unit tests
* Use require for Eventually
* Use a 10 second internal to poll for new results.
2024-11-11 19:26:30 +01:00
Fayzal Ghantiwala
1fdc48faba Alerting: Make context deadline on AlertNG service startup configurable (#96053)
* Make alerting context deadline configurable

* Remove debug logs

* Change default timeout

* Update tests
2024-11-07 18:23:55 +00:00
Zoltán Bedi
85c696c4ad SQL: Add macro support in select case (#88514)
* Feat: timeGroup macro handling in VQB

* Add tests

* Add functions to SQL ds

* Fix lint errors

* Add feature toggle

* Add rendering based on object

* Fix lint

* Fix CI failures

* Fix tests

* Address review comments

* Add docs

* Fix JSX runtime warnings

* Remove docs part that mentions suggest more macros

* Update docs/sources/shared/datasources/sql-query-builder-macros.md

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

* Add smoke test for this feature

* lint

* Add supported macros to influx

* Add setupTests.ts to include in tsconfig.json

* Import jest-dom instead of setupTests.ts

---------

Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-11-04 17:13:35 +01:00
Matheus Macabu
b2de69d741 CloudMigrations: create snapshot for Alert Rules (#95404)
* CloudMigrations: create snapshot for Alert Rules

* CloudMigrations: display Alert Rules in resource list summary
2024-10-25 17:20:05 +02:00
Yuri Tseretyan
2deced7d40 Alerting: Notifications Routes API (#91550)
* Introduce new models RoutingTree, RouteDefaults and Route and api-server to serve them that is backed by provisioning notification policy service.

* update method UpdatePolicyTree of notification policy service to return route and new version

* declare new actions alert.notifications.routes:read and alert.notifications.routes:write and two corresponding fixed roles.

---------

Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
Co-authored-by: Matthew Jacobson <matthew.jacobson@grafana.com>
2024-10-24 13:53:03 -04:00
Matheus Macabu
152b83b3fb CloudMigrations: handle more error codes from GMS backend (#95257)
* CloudMigrations: remove unnecessary if feature toggle gating

* CloudMigrations: handle new error codes from backend
2024-10-24 15:55:02 +02:00
Dana Axinte
98e5048370 CloudMigration - Display different error messages for create migration errors (#94683)
* start on tokens

* more error messages

* more handling

* rephrased with suggestions from Daniel

* separate gms parse method

* use translation

* refactor initial idea to use error obj

* use error dto result

* handle gms client

* clean logs and comments

* fix tests

* tests for gms

* test and lint

* lint

* one more handling from gms

* typing in fe

* use error interface

* use validation error

* remove unused gms error

* use errorlib and helper function in fe

* regen api

* use same error util

* one more error to handle
2024-10-21 09:45:54 +01:00
Matheus Macabu
8673c757a5 CloudMigrations: only append notification policy if feature flag is on and it exists (#94896) 2024-10-17 17:15:30 +02:00
Dana Axinte
a50507e645 CloudMigration: Interpret error code from migration resource item (#94407)
* start on loading the error code

* error code to message mapping

* use resource code type

* use defined error code

* partial updates from comments

* i18nKey gen

* fixed t

* fixed translations

* typing
2024-10-17 14:09:09 +01:00
Matheus Macabu
1051561154 CloudMigrations: create snapshot for Notification Policies (#94852)
* CloudMigrations: create snapshot for Notification Policy

* CloudMigrations: add notification policy constants and components

* CloudMigrations: add uid to resources that have it
2024-10-17 14:58:05 +02:00
Matheus Macabu
47115c714a CloudMigrations: create snapshot for Contact Points (#94719)
* CloudMigrations: create snapshot for Contact Points

* CloudMigrations: add contact point copies and components in frontend

* CloudMigrations: temporarily use bell for all alerts resources
2024-10-15 16:27:28 +02:00
Matheus Macabu
016dea1143 CloudMigrations: create snapshot for Notification Templates (#94676)
* CloudMigrations: create snapshot for Notification Templates

* CloudMigrations: add notification templates resource to frontend
2024-10-15 12:55:33 +02:00
Matheus Macabu
081ec57443 CloudMigrations: create snapshot for Mute Timings (#94668)
* CloudMigrations: Create snapshot for Mute Timings

* CloudMigrations: add mute timings icon and copies to frontend
2024-10-15 09:44:41 +02:00
William Wernert
19a9a79467 Alerting: Publish event when one or more rules are created or changed (#93637)
* Publish event when one or more rules are changed

* Publish affected rules

* Use a fake bus to test publish event without listening

* Wire alerting store into provisioning service
2024-10-11 12:19:52 -04:00
Matheus Macabu
96384b5181 CloudMigrations: cover cases where library panel has no folder (#94405) 2024-10-08 15:14:23 +02:00
Matheus Macabu
6bd2f9f3ea CloudMigrations: remove duplicated import on test (#94322) 2024-10-07 15:32:52 +03: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
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
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
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
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
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
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
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
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
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
Matheus Macabu
1e720306dd CloudMigrations: replace slicesext.Chunk with stdlib implementation (#93743) 2024-09-25 16:52:22 +02:00
Matheus Macabu
945484232c CloudMigrations: remove unused code from sync migration approach (#93430) 2024-09-20 08:58:11 +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
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
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
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
lean.dev
e20c7342a9 CloudMigration: Removes snapshot and resources when deleting a session (#91548) 2024-08-09 16:42:45 +03:00
Michael Mandrus
6cd0971dc6 CloudMigration: Show warning message for successfully migrated non-core data sources (#91545)
* minor performance improvement

* apply a warning to any non-core plugins that successfully migrate

* commit frontend wip while I refactor some stuff

* update api

* repurpose error dialog to be a generic details dialog

* whitespace

* add unit test

* fixes from testing

* fix migration summary

* add comment

* fix localization stuff

* fix backend test

* reduce number of queries to the db

* some PR feedback

* whitespace
2024-08-06 19:35:10 +03:00
Michael Mandrus
3e138449bb CloudMigrations: Fix bugs found during local testing (#91163)
* send dashboard commands instead of dashboards

* move status updates before goroutine to ensure frontend polls

* fix syncing issues between snapshot state and resources

* make sessionUid a requirement for modifying snapshots

* move the function I meant to move earlier

* remove accidental commit

* another accidental commit

* verify UpdateSnapshot is called with sessionUid

* revert

* pass in session uid everywhere

* forgot to save

* fix unit test

* fix typo

* tiny tweak
2024-07-30 09:02:41 -04:00
lean.dev
d8555019f1 CloudMigrations: Fix migration in docker (#91147) 2024-07-29 15:00:43 -03:00
Michael Mandrus
a6088e4ee4 CloudMigrations: Improvements to backend (#91012)
* E2C: Add stat rollup to MigrationSummary

* fix report event url

* open form in new page

* sort folders by heirarchy

* undo accidental commit

* remove another commit

* make folder sorting dynamic

---------

Co-authored-by: joshhunt <josh@trtr.co>
2024-07-29 17:55:22 +00:00
Michael Mandrus
dc355331a6 CloudMigrations: Store encryption key in unified secrets table (#90908)
* store encryption key in unified secrets table

* fix local dev mode

* make metadata more realistic

* fix tests

* fix sql queries against postgres

* fix stats endpoint
2024-07-25 06:34:25 +03:00
Bruno
8d8f2ba587 Cloud migration: encryption key is a byte slice (#90739)
* Cloud migrations: include metadata returned by CMS in the index file

* Cloud migrations: make EncryptionKey a []byte in structs

* test
2024-07-22 11:25:12 -03:00
Bruno
07685646a3 Cloud migrations: include metadata returned by CMS in the index file (#90658) 2024-07-22 10:11:57 -03:00
Michael Mandrus
ee90cd3031 CloudMigrations: Send local events to gms during the migration process (#90637)
* add gms client function

* add timeout config for endpoint

* report events to gms

* fix lint error

* clean up report calls and make sure reports all have local ids

* extra validation

* improve error logging and fix url
2024-07-20 07:02:31 +03:00
Michael Mandrus
71a97b925a CloudMigrations: Add and fix logging (#90616)
* add logs so we can see how long async processes take

* fix a bunch of error logs:

* fix logs again
2024-07-18 21:16:56 +03:00