From c8874a30ed4814cf71402396aa034f1649ad9f66 Mon Sep 17 00:00:00 2001 From: Alexander Borg Date: Wed, 17 Sep 2025 06:35:58 +0200 Subject: [PATCH] Fix jwt-token --- .../20250910-add-raw-payload-fields.js | 64 ++++++++++++------- 1 file changed, 41 insertions(+), 23 deletions(-) diff --git a/server/migrations/20250910-add-raw-payload-fields.js b/server/migrations/20250910-add-raw-payload-fields.js index a66caf9..974fa3d 100644 --- a/server/migrations/20250910-add-raw-payload-fields.js +++ b/server/migrations/20250910-add-raw-payload-fields.js @@ -2,30 +2,48 @@ module.exports = { async up(queryInterface, Sequelize) { - // Check if raw_payload column exists in drone_detections before adding - const droneDetectionsTable = await queryInterface.describeTable('drone_detections'); - if (!droneDetectionsTable.raw_payload) { - await queryInterface.addColumn('drone_detections', 'raw_payload', { - type: Sequelize.JSON, - allowNull: true, - comment: 'Complete raw payload received from detector (for debugging)' - }); - console.log('✅ Added raw_payload field to drone_detections table'); - } else { - console.log('⏭️ raw_payload field already exists in drone_detections table'); - } + try { + // Check if tables exist first + const tables = await queryInterface.showAllTables(); + + // Handle drone_detections table + if (!tables.includes('drone_detections')) { + console.log('⚠️ drone_detections table does not exist yet, skipping raw_payload migration for this table...'); + } else { + // Check if raw_payload column exists in drone_detections before adding + const droneDetectionsTable = await queryInterface.describeTable('drone_detections'); + if (!droneDetectionsTable.raw_payload) { + await queryInterface.addColumn('drone_detections', 'raw_payload', { + type: Sequelize.JSON, + allowNull: true, + comment: 'Complete raw payload received from detector (for debugging)' + }); + console.log('✅ Added raw_payload field to drone_detections table'); + } else { + console.log('⏭️ raw_payload field already exists in drone_detections table'); + } + } - // Check if raw_payload column exists in heartbeats before adding - const heartbeatsTable = await queryInterface.describeTable('heartbeats'); - if (!heartbeatsTable.raw_payload) { - await queryInterface.addColumn('heartbeats', 'raw_payload', { - type: Sequelize.JSON, - allowNull: true, - comment: 'Complete raw payload received from detector (for debugging)' - }); - console.log('✅ Added raw_payload field to heartbeats table'); - } else { - console.log('⏭️ raw_payload field already exists in heartbeats table'); + // Handle heartbeats table + if (!tables.includes('heartbeats')) { + console.log('⚠️ heartbeats table does not exist yet, skipping raw_payload migration for this table...'); + } else { + // Check if raw_payload column exists in heartbeats before adding + const heartbeatsTable = await queryInterface.describeTable('heartbeats'); + if (!heartbeatsTable.raw_payload) { + await queryInterface.addColumn('heartbeats', 'raw_payload', { + type: Sequelize.JSON, + allowNull: true, + comment: 'Complete raw payload received from detector (for debugging)' + }); + console.log('✅ Added raw_payload field to heartbeats table'); + } else { + console.log('⏭️ raw_payload field already exists in heartbeats table'); + } + } + } catch (error) { + console.log('⚠️ Migration skipped - tables may not exist yet:', error.message); + // Don't throw error, just skip this migration if tables don't exist } },