From f9c821f14f1d2f9a6fa31eacaaa8c7b70dd42277 Mon Sep 17 00:00:00 2001 From: Nuxgrid Date: Sat, 11 Jul 2026 22:30:38 +0200 Subject: [PATCH] chore: fix ota server --- monitoring/s3/docker-compose-s3.yml | 1 + monitoring/s3/init-db/01-releases.sql | 9 +++++++++ monitoring/s3/init-db/02-tracking.sql | 14 ++++++++++++++ 3 files changed, 24 insertions(+) create mode 100644 monitoring/s3/init-db/01-releases.sql create mode 100644 monitoring/s3/init-db/02-tracking.sql diff --git a/monitoring/s3/docker-compose-s3.yml b/monitoring/s3/docker-compose-s3.yml index ff7a3195..612fe7c2 100644 --- a/monitoring/s3/docker-compose-s3.yml +++ b/monitoring/s3/docker-compose-s3.yml @@ -55,6 +55,7 @@ services: - POSTGRES_DB=${XAVIA_POSTGRES_DB:-releases_db} volumes: - xavia_db_data:/var/lib/postgresql/data + - ./init-db:/docker-entrypoint-initdb.d:ro networks: - s3_net diff --git a/monitoring/s3/init-db/01-releases.sql b/monitoring/s3/init-db/01-releases.sql new file mode 100644 index 00000000..6c194eba --- /dev/null +++ b/monitoring/s3/init-db/01-releases.sql @@ -0,0 +1,9 @@ +CREATE TABLE IF NOT EXISTS releases ( + id UUID PRIMARY KEY DEFAULT gen_random_uuid(), + runtime_version VARCHAR(255) NOT NULL, + path VARCHAR(255) NOT NULL, + timestamp TIMESTAMP NOT NULL, + commit_hash VARCHAR(255) NOT NULL, + commit_message VARCHAR(255) NOT NULL, + update_id VARCHAR(255) +); diff --git a/monitoring/s3/init-db/02-tracking.sql b/monitoring/s3/init-db/02-tracking.sql new file mode 100644 index 00000000..b24929f2 --- /dev/null +++ b/monitoring/s3/init-db/02-tracking.sql @@ -0,0 +1,14 @@ +CREATE TABLE IF NOT EXISTS releases_tracking ( + id UUID PRIMARY KEY DEFAULT gen_random_uuid(), + release_id UUID NOT NULL REFERENCES releases(id), + download_timestamp TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, + platform VARCHAR(50) NOT NULL, + CONSTRAINT fk_release + FOREIGN KEY(release_id) + REFERENCES releases(id) + ON DELETE CASCADE +); + +-- Index for faster queries on release_id and timestamp +CREATE INDEX idx_tracking_release_id ON releases_tracking(release_id); +CREATE INDEX idx_tracking_platform ON releases_tracking(platform);