X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=scripts%2Fupdate-host.ts;h=5d81a8d74d5d039694b1e141349a882fc0e495dc;hb=8e7442d0d818ef25240b46dd1115187c7c042a3a;hp=2efe326a2b03cdafe95e3ee1345c95476153988d;hpb=610d0be13b3d01f653ef269271dd667a57c85ef2;p=github%2FChocobozzz%2FPeerTube.git diff --git a/scripts/update-host.ts b/scripts/update-host.ts index 2efe326a2..5d81a8d74 100755 --- a/scripts/update-host.ts +++ b/scripts/update-host.ts @@ -2,23 +2,22 @@ import { registerTSPaths } from '../server/helpers/register-ts-paths' registerTSPaths() import { WEBSERVER } from '../server/initializers/constants' -import { ActorFollowModel } from '../server/models/activitypub/actor-follow' +import { ActorFollowModel } from '../server/models/actor/actor-follow' import { VideoModel } from '../server/models/video/video' -import { ActorModel } from '../server/models/activitypub/actor' +import { ActorModel } from '../server/models/actor/actor' import { - getAccountActivityPubUrl, - getVideoActivityPubUrl, - getVideoAnnounceActivityPubUrl, - getVideoChannelActivityPubUrl, - getVideoCommentActivityPubUrl + getLocalAccountActivityPubUrl, + getLocalVideoActivityPubUrl, + getLocalVideoAnnounceActivityPubUrl, + getLocalVideoChannelActivityPubUrl, + getLocalVideoCommentActivityPubUrl } from '../server/lib/activitypub/url' import { VideoShareModel } from '../server/models/video/video-share' import { VideoCommentModel } from '../server/models/video/video-comment' import { AccountModel } from '../server/models/account/account' import { VideoChannelModel } from '../server/models/video/video-channel' -import { VideoStreamingPlaylistModel } from '../server/models/video/video-streaming-playlist' import { initDatabaseModels } from '../server/initializers/database' -import { createTorrentAndSetInfoHash } from '@server/helpers/webtorrent' +import { updateTorrentUrls } from '@server/helpers/webtorrent' import { getServerActor } from '@server/models/application/application' run() @@ -62,8 +61,8 @@ async function run () { console.log('Updating actor ' + actor.url) const newUrl = actor.Account - ? getAccountActivityPubUrl(actor.preferredUsername) - : getVideoChannelActivityPubUrl(actor.preferredUsername) + ? getLocalAccountActivityPubUrl(actor.preferredUsername) + : getLocalVideoChannelActivityPubUrl(actor.preferredUsername) actor.url = newUrl actor.inboxUrl = newUrl + '/inbox' @@ -85,7 +84,7 @@ async function run () { console.log('Updating video share ' + videoShare.url) - videoShare.url = getVideoAnnounceActivityPubUrl(videoShare.Actor, videoShare.Video) + videoShare.url = getLocalVideoAnnounceActivityPubUrl(videoShare.Actor, videoShare.Video) await videoShare.save() } @@ -110,29 +109,35 @@ async function run () { console.log('Updating comment ' + comment.url) - comment.url = getVideoCommentActivityPubUrl(comment.Video, comment) + comment.url = getLocalVideoCommentActivityPubUrl(comment.Video, comment) await comment.save() } console.log('Updating video and torrent files.') - const videos = await VideoModel.listLocal() - for (const video of videos) { + const localVideos = await VideoModel.listLocal() + for (const localVideo of localVideos) { + const video = await VideoModel.loadAndPopulateAccountAndServerAndTags(localVideo.id) + console.log('Updating video ' + video.uuid) - video.url = getVideoActivityPubUrl(video) + video.url = getLocalVideoActivityPubUrl(video) await video.save() for (const file of video.VideoFiles) { console.log('Updating torrent file %s of video %s.', file.resolution, video.uuid) - await createTorrentAndSetInfoHash(video, file) + await updateTorrentUrls(video, file) + + await file.save() } - for (const playlist of video.VideoStreamingPlaylists) { - playlist.playlistUrl = WEBSERVER.URL + VideoStreamingPlaylistModel.getHlsMasterPlaylistStaticPath(video.uuid) - playlist.segmentsSha256Url = WEBSERVER.URL + VideoStreamingPlaylistModel.getHlsSha256SegmentsStaticPath(video.uuid) + const playlist = video.getHLSPlaylist() + for (const file of (playlist?.VideoFiles || [])) { + console.log('Updating fragmented torrent file %s of video %s.', file.resolution, video.uuid) + + await updateTorrentUrls(video, file) - await playlist.save() + await file.save() } } }