X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Flib%2Flive%2Flive-utils.ts;h=bba8766428aa409a9daaff816ac1136d060cd0eb;hb=39d117a47d313637cf3ded4c6fa915aa9fd469ee;hp=6305a97a86fadcabd68dee1cb450a46248db6fc4;hpb=53023be33af420675d0060eb95c99a8038457564;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/lib/live/live-utils.ts b/server/lib/live/live-utils.ts index 6305a97a8..bba876642 100644 --- a/server/lib/live/live-utils.ts +++ b/server/lib/live/live-utils.ts @@ -3,6 +3,7 @@ import { basename, join } from 'path' import { logger } from '@server/helpers/logger' import { MStreamingPlaylist, MVideo } from '@server/types/models' import { getLiveDirectory } from '../paths' +import { LiveSegmentShaStore } from './live-segment-sha-store' function buildConcatenatedName (segmentOrPlaylistPath: string) { const num = basename(segmentOrPlaylistPath).match(/^(\d+)(-|\.)/) @@ -11,9 +12,7 @@ function buildConcatenatedName (segmentOrPlaylistPath: string) { } async function cleanupPermanentLive (video: MVideo, streamingPlaylist: MStreamingPlaylist) { - const hlsDirectory = getLiveDirectory(video) - - await cleanupTMPLiveFiles(hlsDirectory) + await cleanupTMPLiveFiles(video) await streamingPlaylist.destroy() } @@ -24,11 +23,19 @@ async function cleanupUnsavedNormalLive (video: MVideo, streamingPlaylist: MStre await remove(hlsDirectory) await streamingPlaylist.destroy() + + LiveSegmentShaStore.Instance.cleanupShaSegments(video.uuid) } -async function cleanupTMPLiveFiles (hlsDirectory: string) { +async function cleanupTMPLiveFiles (video: MVideo) { + const hlsDirectory = getLiveDirectory(video) + + LiveSegmentShaStore.Instance.cleanupShaSegments(video.uuid) + if (!await pathExists(hlsDirectory)) return + logger.info('Cleanup TMP live files of %s.', hlsDirectory) + const files = await readdir(hlsDirectory) for (const filename of files) {