diff --git a/db/knex_migrations/2025-12-09-0000-add-local-service-monitor.js b/db/knex_migrations/2025-12-09-0000-add-local-service-monitor.js deleted file mode 100644 index ccd4f49a9..000000000 --- a/db/knex_migrations/2025-12-09-0000-add-local-service-monitor.js +++ /dev/null @@ -1,19 +0,0 @@ -/** - * @param {import("knex").Knex} knex Database connection - * @returns {Promise} - */ -exports.up = async (knex) => { - await knex.schema.alterTable("monitor", (table) => { - table.string("system_service_name"); - }); -}; - -/** - * @param {import("knex").Knex} knex Database connection - * @returns {Promise} - */ -exports.down = async (knex) => { - await knex.schema.alterTable("monitor", (table) => { - table.dropColumn("system_service_name"); - }); -}; diff --git a/db/knex_migrations/2025-12-11-0000-rename-to-system-service-monitor.js b/db/knex_migrations/2025-12-11-0000-rename-to-system-service-monitor.js new file mode 100644 index 000000000..16e981746 --- /dev/null +++ b/db/knex_migrations/2025-12-11-0000-rename-to-system-service-monitor.js @@ -0,0 +1,31 @@ +/** + * @param {import("knex").Knex} knex + * @returns {Promise} + */ +exports.up = async (knex) => { + const hasLocalServiceColumn = await knex.schema.hasColumn("monitor", "local_service_name"); + const hasSystemServiceColumn = await knex.schema.hasColumn("monitor", "system_service_name"); + + if (hasLocalServiceColumn && !hasSystemServiceColumn) { + await knex.schema.alterTable("monitor", (table) => { + table.renameColumn("local_service_name", "system_service_name"); + }); + } else if (!hasSystemServiceColumn) { + await knex.schema.alterTable("monitor", (table) => { + table.string("system_service_name"); + }); + } +}; + +/** + * @param {import("knex").Knex} knex + * @returns {Promise} + */ +exports.down = async (knex) => { + const hasSystemServiceColumn = await knex.schema.hasColumn("monitor", "system_service_name"); + if (hasSystemServiceColumn) { + await knex.schema.alterTable("monitor", (table) => { + table.renameColumn("system_service_name", "local_service_name"); + }); + } +};