rename the endpoint to /prune

This commit is contained in:
Hongbo Wu
2023-10-25 14:41:49 +08:00
parent e6f378f8fe
commit cf95b6fa07
2 changed files with 31 additions and 35 deletions

View File

@ -34,41 +34,37 @@ const getCleanupMessage = (msgStr: string): CleanupMessage => {
export function userServiceRouter() {
const router = express.Router()
router.post(
'/cleanup',
cors<express.Request>(corsConfig),
async (req, res) => {
logger.info('cleanup soft deleted users')
router.post('/prune', cors<express.Request>(corsConfig), async (req, res) => {
logger.info('prune soft deleted users')
const { message: msgStr, expired } = readPushSubscription(req)
const { message: msgStr, expired } = readPushSubscription(req)
if (!msgStr) {
return res.status(200).send('Bad Request')
}
if (expired) {
logger.info('discarding expired message')
return res.status(200).send('Expired')
}
const cleanupMessage = getCleanupMessage(msgStr)
const subTime = cleanupMessage.subDays * 1000 * 60 * 60 * 24 // convert days to milliseconds
try {
const result = await deleteUsers({
status: StatusType.Deleted,
updatedAt: LessThan(new Date(Date.now() - subTime)), // subDays ago
})
logger.info('cleanup result', result)
return res.sendStatus(200)
} catch (error) {
logger.error('error cleaning up users', error)
return res.sendStatus(500)
}
if (!msgStr) {
return res.status(200).send('Bad Request')
}
)
if (expired) {
logger.info('discarding expired message')
return res.status(200).send('Expired')
}
const cleanupMessage = getCleanupMessage(msgStr)
const subTime = cleanupMessage.subDays * 1000 * 60 * 60 * 24 // convert days to milliseconds
try {
const result = await deleteUsers({
status: StatusType.Deleted,
updatedAt: LessThan(new Date(Date.now() - subTime)), // subDays ago
})
logger.info('prune result', result)
return res.sendStatus(200)
} catch (error) {
logger.error('error prune users', error)
return res.sendStatus(500)
}
})
return router
}

View File

@ -12,7 +12,7 @@ import { request } from '../util'
describe('User Service Router', () => {
const token = process.env.PUBSUB_VERIFICATION_TOKEN || ''
describe('cleanup', () => {
describe('prune', () => {
let toDeleteUserIds: string[] = []
before(async () => {
@ -43,7 +43,7 @@ describe('User Service Router', () => {
await deleteUsers({ id: In(toDeleteUserIds) })
})
it('deletes soft deleted users a day ago', async () => {
it('prunes soft deleted users a day ago', async () => {
const data = {
message: {
data: Buffer.from(
@ -54,7 +54,7 @@ describe('User Service Router', () => {
}
await request
.post('/svc/pubsub/user/cleanup?token=' + token)
.post('/svc/pubsub/user/prune?token=' + token)
.send(data)
.expect(200)