20231101204352_drop_unused_saas_indexes.mjs 848 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import Helpers from './lib/helpers.mjs'
  2. const tags = ['saas']
  3. const SUBSCRIPTIONS_INDEXES = [
  4. {
  5. name: 'free_trial',
  6. key: { 'freeTrial.downgraded': 1, 'freeTrial.expiresAt': 1 },
  7. },
  8. ]
  9. const USERS_INDEXES = [
  10. {
  11. name: 'labsProgram_1',
  12. key: { labsProgram: 1 },
  13. },
  14. {
  15. name: 'labsProgramGalileo_1',
  16. key: { labsProgramGalileo: 1 },
  17. },
  18. ]
  19. const migrate = async client => {
  20. const { db } = client
  21. await Helpers.dropIndexesFromCollection(
  22. db.subscriptions,
  23. SUBSCRIPTIONS_INDEXES
  24. )
  25. await Helpers.dropIndexesFromCollection(db.users, USERS_INDEXES)
  26. }
  27. const rollback = async client => {
  28. const { db } = client
  29. await Helpers.addIndexesToCollection(db.subscriptions, SUBSCRIPTIONS_INDEXES)
  30. await Helpers.addIndexesToCollection(db.users, USERS_INDEXES)
  31. }
  32. export default {
  33. tags,
  34. migrate,
  35. rollback,
  36. }