[web] enable mongo notablescan in CI (#29501)

* [monorepo] record ERROR/FATAL log messages in junit report

* [web] put SaaS specific code behind feature flag

* [web] use split test cache for getting user assignments

The unit tests needed updating as they did not replicate any of the
 mongo filtering. The acceptance tests cover this logic.

* [web] make better use of existing indexes

* [web] avoid col-scan in tests of notifications module

* [web] remove cleanup of empty feedbacks collection

* [web] add assertion for reason of rejected request in launchpad test

* [web] add missing indexes

* [web] enable mongo notablescan

* [web] make emailNotifications tests compatible with notablescan

GitOrigin-RevId: b888f2feeb3a0e915f068ae1c4ea23ec17821221
This commit is contained in:
Jakob Ackermann
2026-01-12 11:55:10 +00:00
committed by Copybot
parent 3073c94522
commit 425e7b1e5b
48 changed files with 268 additions and 77 deletions

View File

@@ -0,0 +1,34 @@
import Helpers from './lib/helpers.mjs'
const tags = ['saas']
const indexes = [
{
key: {
managerIds: 1,
},
name: 'managerIds_1',
},
]
const migrate = async client => {
const { db } = client
await Helpers.addIndexesToCollection(db.institutions, indexes)
}
const rollback = async client => {
const { db } = client
try {
await Helpers.dropIndexesFromCollection(db.institutions, indexes)
} catch (err) {
console.error('Something went wrong rolling back the migrations', err)
}
}
export default {
tags,
migrate,
rollback,
}

View File

@@ -0,0 +1,34 @@
import Helpers from './lib/helpers.mjs'
const tags = ['saas']
const indexes = [
{
key: {
managerIds: 1,
},
name: 'managerIds_1',
},
]
const migrate = async client => {
const { db } = client
await Helpers.addIndexesToCollection(db.publishers, indexes)
}
const rollback = async client => {
const { db } = client
try {
await Helpers.dropIndexesFromCollection(db.publishers, indexes)
} catch (err) {
console.error('Something went wrong rolling back the migrations', err)
}
}
export default {
tags,
migrate,
rollback,
}

View File

@@ -0,0 +1,29 @@
import Helpers from './lib/helpers.mjs'
const tags = ['saas']
const indexes = [
{
name: 'ssoConfig_1',
key: { ssoConfig: 1 },
partialFilterExpression: {
ssoConfig: { $exists: true },
},
},
]
const migrate = async client => {
const { db } = client
await Helpers.addIndexesToCollection(db.subscriptions, indexes)
}
const rollback = async client => {
const { db } = client
await Helpers.dropIndexesFromCollection(db.subscriptions, indexes)
}
export default {
tags,
migrate,
rollback,
}

View File

@@ -0,0 +1,29 @@
import Helpers from './lib/helpers.mjs'
const tags = ['server-ce', 'server-pro']
const indexes = [
{
name: 'isAdmin_1',
key: { isAdmin: 1 },
partialFilterExpression: {
isAdmin: true,
},
},
]
const migrate = async client => {
const { db } = client
await Helpers.addIndexesToCollection(db.users, indexes)
}
const rollback = async client => {
const { db } = client
await Helpers.dropIndexesFromCollection(db.users, indexes)
}
export default {
tags,
migrate,
rollback,
}