From a09ed6ae9fb35ece77755976328b06bef81ec2a9 Mon Sep 17 00:00:00 2001 From: Evan Purkhiser Date: Tue, 28 Feb 2023 12:05:33 -0800 Subject: [PATCH] ref(db): Drop `project_id` from Environment (model state) --- migrations_lockfile.txt | 2 +- ...0364_remove_project_id_from_environment.py | 35 +++++++++++++++++++ src/sentry/models/environment.py | 2 -- 3 files changed, 36 insertions(+), 3 deletions(-) create mode 100644 src/sentry/migrations/0364_remove_project_id_from_environment.py diff --git a/migrations_lockfile.txt b/migrations_lockfile.txt index f61d5643f6e271..7fb436afba352a 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: 0363_debug_id_artifact_bundle +sentry: 0364_remove_project_id_from_environment social_auth: 0001_initial diff --git a/src/sentry/migrations/0364_remove_project_id_from_environment.py b/src/sentry/migrations/0364_remove_project_id_from_environment.py new file mode 100644 index 00000000000000..dd2308f0281b74 --- /dev/null +++ b/src/sentry/migrations/0364_remove_project_id_from_environment.py @@ -0,0 +1,35 @@ +# Generated by Django 2.2.28 on 2023-02-24 20:34 + +from django.db import migrations + +from sentry.new_migrations.migrations import CheckedMigration + + +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", "0363_debug_id_artifact_bundle"), + ] + + operations = [ + migrations.SeparateDatabaseAndState( + database_operations=[], + state_operations=[ + migrations.RemoveField( + model_name="environment", + name="project_id", + ), + ], + ), + ] diff --git a/src/sentry/models/environment.py b/src/sentry/models/environment.py index e40a0fefad653f..645e9001c48337 100644 --- a/src/sentry/models/environment.py +++ b/src/sentry/models/environment.py @@ -38,8 +38,6 @@ class Environment(Model): organization_id = BoundedBigIntegerField() projects = models.ManyToManyField("sentry.Project", through=EnvironmentProject) - # DEPRECATED, use projects - project_id = BoundedBigIntegerField(null=True) name = models.CharField(max_length=64) date_added = models.DateTimeField(default=timezone.now)