From dd3da7a6b0112834e100ba29d3b54026ab63188f Mon Sep 17 00:00:00 2001 From: Joseph Sawaya Date: Tue, 11 Feb 2025 16:47:34 -0500 Subject: [PATCH 1/3] fix: update migrate-timeseries.sh --- migrate-timeseries.sh | 3 +-- migrate_timeseries.py | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 migrate_timeseries.py diff --git a/migrate-timeseries.sh b/migrate-timeseries.sh index 3d47e86fa..1f8ebbfa8 100644 --- a/migrate-timeseries.sh +++ b/migrate-timeseries.sh @@ -6,5 +6,4 @@ if [ -f "/usr/local/bin/berglas" ]; then prefix="berglas exec --" fi -$prefix python manage.py migrate --database timeseries rollouts -$prefix python manage.py migrate --database timeseries pg_telemetry +$prefix python migrate_timeseries.py diff --git a/migrate_timeseries.py b/migrate_timeseries.py new file mode 100644 index 000000000..d135cf0ac --- /dev/null +++ b/migrate_timeseries.py @@ -0,0 +1,32 @@ +import os + +import django +from django.core.management import call_command + +# Setup Django environment +os.environ.setdefault("DJANGO_SETTINGS_MODULE", "django_scaffold.settings") +django.setup() + +from django.conf import settings # noqa: E402 + + +def run_migrate_commands(): + try: + if settings.TA_TIMESERIES_ENABLED: + print("Running ta_timeseries migrations") + call_command( + "migrate", + database="ta_timeseries", + app_label="ta_timeseries", + settings="django_scaffold.settings", + verbosity=1, + ) + else: + print("Skipping ta_timeseries migrations") + + except Exception as e: + print(f"An error occurred: {e}") + + +if __name__ == "__main__": + run_migrate_commands() From 22d1b6536fd2ff711846a3c62ddd8b87bd714c2d Mon Sep 17 00:00:00 2001 From: Joseph Sawaya Date: Fri, 21 Mar 2025 16:33:30 -0400 Subject: [PATCH 2/3] use logging instead of print --- migrate_timeseries.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/migrate_timeseries.py b/migrate_timeseries.py index d135cf0ac..b40fbe33a 100644 --- a/migrate_timeseries.py +++ b/migrate_timeseries.py @@ -1,3 +1,4 @@ +import logging import os import django @@ -9,11 +10,13 @@ from django.conf import settings # noqa: E402 +logger = logging.getLogger(__name__) + def run_migrate_commands(): try: if settings.TA_TIMESERIES_ENABLED: - print("Running ta_timeseries migrations") + logger.info("Running ta_timeseries migrations") call_command( "migrate", database="ta_timeseries", @@ -22,10 +25,10 @@ def run_migrate_commands(): verbosity=1, ) else: - print("Skipping ta_timeseries migrations") + logger.info("Skipping ta_timeseries migrations") except Exception as e: - print(f"An error occurred: {e}") + logger.error(f"An error occurred: {e}") if __name__ == "__main__": From 38511a97147380b654c25b4c4acb21c3afaf3d26 Mon Sep 17 00:00:00 2001 From: Joseph Sawaya Date: Fri, 21 Mar 2025 16:21:31 -0400 Subject: [PATCH 3/3] build: include migrating timeseries we previously did not include timeseries in INSTALLED_APPS and we did not include it in the migrate-timeseries.sh script but there's no good reason for that, and we should try to migrate all apps and databases if we can i think monorepo fixes this in some way but for now we should do this and when we move over to the monorepo we should take a second look at all these different scripts and try to consolidate the logic --- django_scaffold/settings.py | 1 + migrate_timeseries.py | 14 ++++++++++++++ 2 files changed, 15 insertions(+) diff --git a/django_scaffold/settings.py b/django_scaffold/settings.py index 94346a286..892d88c30 100644 --- a/django_scaffold/settings.py +++ b/django_scaffold/settings.py @@ -36,6 +36,7 @@ "shared.django_apps.reports", "shared.django_apps.staticanalysis", "shared.django_apps.ta_timeseries", + "shared.django_apps.timeseries", ] TELEMETRY_VANILLA_DB = "default" diff --git a/migrate_timeseries.py b/migrate_timeseries.py index b40fbe33a..c12cd0213 100644 --- a/migrate_timeseries.py +++ b/migrate_timeseries.py @@ -15,8 +15,22 @@ def run_migrate_commands(): try: + if settings.TIMESERIES_ENABLED: + logger.info("Running timeseries migrations") + + call_command( + "migrate", + database="timeseries", + app_label="timeseries", + settings="django_scaffold.settings", + verbosity=1, + ) + else: + logger.info("Skipping timeseries migrations") + if settings.TA_TIMESERIES_ENABLED: logger.info("Running ta_timeseries migrations") + call_command( "migrate", database="ta_timeseries",