X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Flib%2Fredundancy.ts;h=78d84e02e97d7d8648ff8f4bed3eac99ea7fc5ed;hb=598edb8af1cc7e5ea3ead1ec9c96c4853b90be36;hp=16b1226585d76f277a65be40001c3f29ef497fed;hpb=e5565833f62b97f62ea75eba5b479963ae78b873;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/lib/redundancy.ts b/server/lib/redundancy.ts index 16b122658..78d84e02e 100644 --- a/server/lib/redundancy.ts +++ b/server/lib/redundancy.ts @@ -2,8 +2,9 @@ import { VideoRedundancyModel } from '../models/redundancy/video-redundancy' import { sendUndoCacheFile } from './activitypub/send' import { Transaction } from 'sequelize' import { getServerActor } from '../helpers/utils' +import { MVideoRedundancyVideo } from '@server/typings/models' -async function removeVideoRedundancy (videoRedundancy: VideoRedundancyModel, t?: Transaction) { +async function removeVideoRedundancy (videoRedundancy: MVideoRedundancyVideo, t?: Transaction) { const serverActor = await getServerActor() // Local cache, send undo to remote instances @@ -12,8 +13,17 @@ async function removeVideoRedundancy (videoRedundancy: VideoRedundancyModel, t?: await videoRedundancy.destroy({ transaction: t }) } +async function removeRedundanciesOfServer (serverId: number) { + const redundancies = await VideoRedundancyModel.listLocalOfServer(serverId) + + for (const redundancy of redundancies) { + await removeVideoRedundancy(redundancy) + } +} + // --------------------------------------------------------------------------- export { + removeRedundanciesOfServer, removeVideoRedundancy }