New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
AngularMigration: Allow dashboard by dashboard migration #84100
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code wise I think this PR is looking great
I am struggling a little bit to test this locally though. I set the angularDeprecationUI
feature toggle to true in my custom.ini file but I'm not able to get it to show up without hard coding 😬
I also noticed that our gdev panel migration dashboard functionality seems to be broken with these changes 🤔
Screen.Recording.2024-03-20.at.7.11.44.PM.mov
panel.type === 'graph' && | ||
(shouldMigrateAllAngularPanels || | ||
config.featureToggles.autoMigrateGraphPanel || | ||
isUrlFeatureFlagEnabled('autoMigrateGraphPanel')) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this ever happen via the "try migration" button in the banner? Or does that always set the autoMigrateOldPanels
feature toggle to true? In which case this code is meant to support the manual case of testing granular panel by panel migration via url query params?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes this gets triggered via "try migration", it's not setting/allowing any feature flags and it's just checking the url for the ff and migrates only the current dashboard.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome work!! 👏 👏 👏 👏
I have a few comments/questions but the code is looking good!
I tried it locally and it seems to work well! I have also tried @nmarrs dashboard and for me it worked without any issues 🤔
public/app/features/plugins/angularDeprecation/AngularMigrationNotice.tsx
Outdated
Show resolved
Hide resolved
@nmarrs the gdev dashboard is migrating fine for me 🤔 |
I will re-review later today - maybe all the things I hard coded for testing was messing things up 😅 |
public/app/features/plugins/angularDeprecation/AngularMigrationNotice.test.tsx
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! Awesome work! 🚀🚀
Works fine for me, but I would wait to see if we can reproduce the issue that @nmarrs was having before merging this
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM - thanks for pair reviewing with me @leeoniya / @adela-almasan 😬
We discovered a strange case where the banner isn't appearing in the Devenv - panel migrations
dashboard, but the revert banner appears once a migration is applied 🤔
Screen.Recording.2024-03-27.at.1.08.04.PM.mov
Also, just a note - I think that we want to target v11.0.x (and not v11.1.x) for this change - though maybe it doesn't matter either way as post v11 angular support will be disabled by default
Note: to test this + future angular migrations in the future you will need to add
angular_support_enabled = true
to your custom.ini
file as this PR has disabled angular by default
(cherry picked from commit e5d1cd8)
This PR allows to do the Angular migration dashboard by dashboard and removes the confusion from the initial approach - where the feature flag would migrate all dashboards until the next page refresh, so the user could end up with broken dashboards without the ability to see how the dashboard was looking before.
The URL feature flags are treated as strings and are bypassing the previous implementation. I'm expecting to revert to that functionality after we're done with the migrations.
migration_banners.mov
Special notes for your reviewer:
Please check that: