From 169d843e0ce9dca38d6c263385023910c86e6886 Mon Sep 17 00:00:00 2001 From: Guilhem CARRON <gcarron@grandlyon.com> Date: Mon, 7 Feb 2022 08:23:38 +0000 Subject: [PATCH] fix(migration): Prevent deprecated migration to launch --- src/migrations/migration.data.ts | 5 +++-- src/migrations/migration.ts | 6 ++++-- src/migrations/migration.type.ts | 1 + 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/migrations/migration.data.ts b/src/migrations/migration.data.ts index a99bd4e99..c49f9a02b 100644 --- a/src/migrations/migration.data.ts +++ b/src/migrations/migration.data.ts @@ -288,6 +288,7 @@ export const migrations: Migration[] = [ releaseNotes: null, docTypes: FLUIDPRICES_DOCTYPE, isCreate: true, + isDeprecated: true, run: async (_client: Client, docs: any[]): Promise<any> => { return null }, @@ -497,9 +498,9 @@ export const migrations: Migration[] = [ description: 'Init new fluidPrices for water -- deprecated --', releaseNotes: null, docTypes: FLUIDPRICES_DOCTYPE, - + isDeprecated: true, run: async (_client: Client, docs: any[]): Promise<any> => { - return null + return {} }, }, { diff --git a/src/migrations/migration.ts b/src/migrations/migration.ts index 6dfe010f6..fa923665f 100644 --- a/src/migrations/migration.ts +++ b/src/migrations/migration.ts @@ -143,7 +143,9 @@ export async function migrate( migration.docTypes, migration.queryOptions ) - if (docToUpdate.length && !migration.isCreate) { + if (migration.isDeprecated) { + result = migrationNoop() + } else if (docToUpdate.length && !migration.isCreate) { const migratedDocs = await migration.run(_client, docToUpdate) if (migratedDocs.length) { result = await save(_client, migratedDocs) @@ -155,7 +157,7 @@ export async function migrate( } // Handle new doctype creation - if (migration.isCreate) { + if (migration.isCreate && !migration.isDeprecated) { await migration.run(_client, docToUpdate) result = { type: MIGRATION_RESULT_COMPLETE, errors: [] } } diff --git a/src/migrations/migration.type.ts b/src/migrations/migration.type.ts index 84ebe24e5..505363b2f 100644 --- a/src/migrations/migration.type.ts +++ b/src/migrations/migration.type.ts @@ -28,6 +28,7 @@ export type Migration = { releaseNotes: Notes | null docTypes: string isCreate?: boolean + isDeprecated?: boolean queryOptions?: MigrationQueryOptions appVersion: string run: (_client: Client, docs: any[]) => Promise<any[]> -- GitLab