diff --git a/migrations_lockfile.txt b/migrations_lockfile.txt index e0b24e3078326c..c24c5212670a4b 100644 --- a/migrations_lockfile.txt +++ b/migrations_lockfile.txt @@ -6,5 +6,5 @@ To resolve this, rebase against latest master and regenerate your migration. Thi will then be regenerated, and you should be able to merge without conflicts. nodestore: 0002_nodestore_no_dictfield -sentry: 0520_migrate_world_map_widgets +sentry: 0519_remove_repo_name_constraint social_auth: 0002_default_auto_field diff --git a/src/sentry/migrations/0520_migrate_world_map_widgets.py b/src/sentry/migrations/0520_migrate_world_map_widgets.py deleted file mode 100644 index 9d7749def85074..00000000000000 --- a/src/sentry/migrations/0520_migrate_world_map_widgets.py +++ /dev/null @@ -1,62 +0,0 @@ -# Generated by Django 3.2.20 on 2023-07-24 19:02 - -from django.db import migrations - -from sentry.models import DashboardWidgetQuery -from sentry.new_migrations.migrations import CheckedMigration - - -def migrate_worldmap_widgets_to_table_widgets(apps, schema_editor): - # World map visulization has display_type 5 - widgetQueries = DashboardWidgetQuery.objects.select_related("widget").filter( - widget__display_type=5 - ) - - for widgetQuery in widgetQueries: - # Change widget display type from world_map:5 to table:4 - widgetQuery.widget.display_type = 4 - - # Ensure condition has countr_code check - if "has:geo.country_code" not in widgetQuery.conditions: - widgetQuery.conditions = widgetQuery.conditions + " has:geo.country_code" - - # Add region and country_code columns - if "geo.region" not in widgetQuery.columns: - widgetQuery.columns.insert(0, "geo.region") - if "geo.country_code" not in widgetQuery.columns: - widgetQuery.columns.insert(0, "geo.country_code") - - # Add region and country_code as fields - if "geo.region" not in widgetQuery.fields: - widgetQuery.fields.insert(0, "geo.region") - if "geo.country_code" not in widgetQuery.fields: - widgetQuery.fields.insert(0, "geo.country_code") - - widgetQuery.widget.save() - widgetQuery.save() - - -class Migration(CheckedMigration): - # This flag is used to mark that a migration shouldn't be automatically run in production. For - # the most part, this should only be used for operations where it's safe to run the migration - # after your code has deployed. So this should not be used for most operations that alter the - # schema of a table. - # Here are some things that make sense to mark as dangerous: - # - Large data migrations. Typically we want these to be run manually by ops so that they can - # be monitored and not block the deploy for a long period of time while they run. - # - Adding indexes to large tables. Since this can take a long time, we'd generally prefer to - # have ops run this and not block the deploy. Note that while adding an index is a schema - # change, it's completely safe to run the operation after the code has deployed. - is_dangerous = False - - dependencies = [ - ("sentry", "0519_remove_repo_name_constraint"), - ] - - operations = [ - migrations.RunPython( - migrate_worldmap_widgets_to_table_widgets, - migrations.RunPython.noop, - hints={"tables": ["sentry_dashboardwidgetquery", "sentry_dashboardwidget"]}, - ), - ]