|
1 | 1 | import {extractSingleQueryParam, sendResponseMessage} from "./utils"; |
2 | 2 | import {db} from "../../firebase"; |
3 | 3 | import {ISODatetime} from "../../../../../shared/type-utils"; |
4 | | -import { |
5 | | - createExistingUsersTokensWallet |
6 | | -} from "../firestore/migrations/000-createExistingUsersTokensWallet"; |
7 | | -import {createExistingUsersInfos} from "../firestore/migrations/001-createExistingUsersInfos"; |
8 | | -import {addUserIdInTokenWallet} from "../firestore/migrations/002-addUserIdInTokenWallet"; |
9 | | -import { |
10 | | - gettingRidOfUserPreferencesPastEvents |
11 | | -} from "../firestore/migrations/003-gettingRidOfUserPreferencesPastEvents"; |
12 | | -import {createOrganizerSpaceRatings} from "../firestore/migrations/006-createOrganizerSpaceRatings"; |
13 | | -import { |
14 | | - cleanComputedTalkFavoritesCollectionsDeletion, |
15 | | - deleteComputedTalkFavoritesCollections |
16 | | -} from "../firestore/migrations/007-deleteComputedTalkFavoritesCollection"; |
17 | | -import { |
18 | | - introducingPerTalkFeedbacksLastUpdates, |
19 | | -} from "../firestore/migrations/008-introducingPerTalkFeedbacksLastUpdates"; |
20 | | -import { |
21 | | - refactoOrgaSpaceRatingsToPerTalkRatings |
22 | | -} from "../firestore/migrations/009-refactoOrgaSpaceRatingsToPerTalkRatings"; |
23 | | -import { |
24 | | - introduceTalksStats_allInOneDocument |
25 | | -} from "../firestore/migrations/010-introduceTalksStats-allInOneDocument"; |
26 | | -import { |
27 | | - introduceOrganizerSpaceDailyRatings |
28 | | -} from "../firestore/migrations/011-introduceOrganizerSpaceDailyRatings"; |
29 | | -import {resetFavoritesLastUpdates} from "../firestore/migrations/012-resetFavoritesLastUpdates"; |
30 | | -import {introduceRoomsStats} from "../firestore/migrations/013-introduceRoomsStats"; |
31 | | -import { |
32 | | - introduceGlobalInfosAndSlowPacedTalkStats |
33 | | -} from "../firestore/migrations/014-introduceGlobalInfosAndSlowPacedTalkStats"; |
34 | | -import {introduceCrawlerFamilyAndEventName} from "../firestore/migrations/015-introduceCrawlerFamilyAndEventName"; |
35 | | -import {considerCrawlingKeysAsLegacy} from "../firestore/migrations/016-considerCrawlingKeysAsLegacy"; |
36 | 4 | import * as functions from "firebase-functions"; |
37 | 5 | import * as express from "express"; |
38 | | -import {migrateFamilyEventsStatsAccessTokenTypes} from "../firestore/migrations/017-migrateSomePublicTokenTypes"; |
39 | 6 |
|
40 | 7 | /** |
41 | 8 | * Like Flyway, but for firestore :-) |
42 | 9 | */ |
43 | 10 | const MIGRATIONS: Migration[] = [ |
44 | | - { name: "createExistingUsersTokensWallet", exec: createExistingUsersTokensWallet }, |
45 | | - { name: "createExistingUsersInfos", exec: createExistingUsersInfos }, |
46 | | - { name: "addUserIdInTokenWallet", exec: addUserIdInTokenWallet }, |
47 | | - { name: "gettingRidOfUserPreferencesPastEvents", exec: gettingRidOfUserPreferencesPastEvents }, |
48 | | - { name: "createOrganizerSpaceRatings", exec: createOrganizerSpaceRatings }, |
| 11 | + { name: "createExistingUsersTokensWallet", exec: async () => (await import("../firestore/migrations/000-createExistingUsersTokensWallet")).createExistingUsersTokensWallet() }, |
| 12 | + { name: "createExistingUsersInfos", exec: async () => (await import("../firestore/migrations/001-createExistingUsersInfos")).createExistingUsersInfos() }, |
| 13 | + { name: "addUserIdInTokenWallet", exec: async () => (await import("../firestore/migrations/002-addUserIdInTokenWallet")).addUserIdInTokenWallet() }, |
| 14 | + { name: "gettingRidOfUserPreferencesPastEvents", exec: async () => (await import("../firestore/migrations/003-gettingRidOfUserPreferencesPastEvents")).gettingRidOfUserPreferencesPastEvents() }, |
| 15 | + { name: "createOrganizerSpaceRatings", exec: async () => (await import("../firestore/migrations/006-createOrganizerSpaceRatings")).createOrganizerSpaceRatings() }, |
49 | 16 | // This migration can wait Devoxx BE '23 to be completed, as __computed collection might still be |
50 | 17 | // used by people having an old version of the app in their service worker cache, so the longer we keep |
51 | 18 | // the collection and the safer we will be |
52 | | - { name: "deleteComputedTalkFavoritesCollections", exec: deleteComputedTalkFavoritesCollections, minimumMigrationDate: "2023-10-09T00:00:00Z" }, |
53 | | - { name: "introducingPerTalkFeedbacksLastUpdates", exec: introducingPerTalkFeedbacksLastUpdates }, |
54 | | - { name: "refactoOrgaSpaceRatingsToPerTalkRatings", exec: refactoOrgaSpaceRatingsToPerTalkRatings }, |
55 | | - { name: "introduceTalksStats_allInOneDocument", exec: introduceTalksStats_allInOneDocument }, |
56 | | - { name: "introduceOrganizerSpaceDailyRatings", exec: introduceOrganizerSpaceDailyRatings }, |
57 | | - { name: "introduceOrganizerSpaceDailyRatingsAgain", exec: introduceOrganizerSpaceDailyRatings }, |
58 | | - { name: "cleanComputedTalkFavoritesCollectionsDeletion", exec: cleanComputedTalkFavoritesCollectionsDeletion }, |
59 | | - { name: "resetFavoritesLastUpdates", exec: resetFavoritesLastUpdates }, |
60 | | - { name: "introduceRoomsStats", exec: introduceRoomsStats }, |
61 | | - { name: "introduceGlobalInfosAndSlowPacedTalkStats", exec: introduceGlobalInfosAndSlowPacedTalkStats }, |
62 | | - { name: "introduceCrawlerFamilyAndEventName", exec: introduceCrawlerFamilyAndEventName }, |
63 | | - { name: "considerCrawlingKeysAsLegacy", exec: considerCrawlingKeysAsLegacy }, |
64 | | - { name: "migrateFamilyEventsStatsAccessTokenTypes", exec: migrateFamilyEventsStatsAccessTokenTypes }, |
| 19 | + { name: "deleteComputedTalkFavoritesCollections", exec: async () => (await import("../firestore/migrations/007-deleteComputedTalkFavoritesCollection")).deleteComputedTalkFavoritesCollections(), minimumMigrationDate: "2023-10-09T00:00:00Z" }, |
| 20 | + { name: "introducingPerTalkFeedbacksLastUpdates", exec: async () => (await import("../firestore/migrations/008-introducingPerTalkFeedbacksLastUpdates")).introducingPerTalkFeedbacksLastUpdates() }, |
| 21 | + { name: "refactoOrgaSpaceRatingsToPerTalkRatings", exec: async () => (await import("../firestore/migrations/009-refactoOrgaSpaceRatingsToPerTalkRatings")).refactoOrgaSpaceRatingsToPerTalkRatings() }, |
| 22 | + { name: "introduceTalksStats_allInOneDocument", exec: async () => (await import("../firestore/migrations/010-introduceTalksStats-allInOneDocument")).introduceTalksStats_allInOneDocument() }, |
| 23 | + { name: "introduceOrganizerSpaceDailyRatings", exec: async () => (await import("../firestore/migrations/011-introduceOrganizerSpaceDailyRatings")).introduceOrganizerSpaceDailyRatings() }, |
| 24 | + { name: "introduceOrganizerSpaceDailyRatingsAgain", exec: async () => (await import("../firestore/migrations/011-introduceOrganizerSpaceDailyRatings")).introduceOrganizerSpaceDailyRatings() }, |
| 25 | + { name: "cleanComputedTalkFavoritesCollectionsDeletion", exec: async () => (await import("../firestore/migrations/007-deleteComputedTalkFavoritesCollection")).cleanComputedTalkFavoritesCollectionsDeletion() }, |
| 26 | + { name: "resetFavoritesLastUpdates", exec: async () => (await import("../firestore/migrations/012-resetFavoritesLastUpdates")).resetFavoritesLastUpdates() }, |
| 27 | + { name: "introduceRoomsStats", exec: async () => (await import("../firestore/migrations/013-introduceRoomsStats")).introduceRoomsStats() }, |
| 28 | + { name: "introduceGlobalInfosAndSlowPacedTalkStats", exec: async () => (await import("../firestore/migrations/014-introduceGlobalInfosAndSlowPacedTalkStats")).introduceGlobalInfosAndSlowPacedTalkStats() }, |
| 29 | + { name: "introduceCrawlerFamilyAndEventName", exec: async () => (await import("../firestore/migrations/015-introduceCrawlerFamilyAndEventName")).introduceCrawlerFamilyAndEventName() }, |
| 30 | + { name: "considerCrawlingKeysAsLegacy", exec: async () => (await import("../firestore/migrations/016-considerCrawlingKeysAsLegacy")).considerCrawlingKeysAsLegacy() }, |
| 31 | + { name: "migrateFamilyEventsStatsAccessTokenTypes", exec: async () => (await import("../firestore/migrations/017-migrateSomePublicTokenTypes")).migrateFamilyEventsStatsAccessTokenTypes() }, |
65 | 32 | ]; |
66 | 33 |
|
67 | 34 | export type MigrationResult = "OK"|"Error"; |
|
0 commit comments