Refactor enableTranscoding command helpers
This commit is contained in:
parent
e390107e5a
commit
74c8d5bf2d
14 changed files with 43 additions and 34 deletions
|
@ -65,7 +65,7 @@ describe('Test managing runners', function () {
|
||||||
registrationToken = data[0].registrationToken
|
registrationToken = data[0].registrationToken
|
||||||
registrationTokenId = data[0].id
|
registrationTokenId = data[0].id
|
||||||
|
|
||||||
await server.config.enableTranscoding(true, true)
|
await server.config.enableTranscoding({ hls: true, webVideo: true })
|
||||||
await server.config.enableStudio()
|
await server.config.enableStudio()
|
||||||
await server.config.enableRemoteTranscoding()
|
await server.config.enableRemoteTranscoding()
|
||||||
await server.config.enableRemoteStudio()
|
await server.config.enableRemoteStudio()
|
||||||
|
@ -451,7 +451,7 @@ describe('Test managing runners', function () {
|
||||||
const { uuid } = await server.videos.quickUpload({ name: 'video studio' })
|
const { uuid } = await server.videos.quickUpload({ name: 'video studio' })
|
||||||
videoStudioUUID = uuid
|
videoStudioUUID = uuid
|
||||||
|
|
||||||
await server.config.enableTranscoding(true, true)
|
await server.config.enableTranscoding({ hls: true, webVideo: true })
|
||||||
await server.config.enableStudio()
|
await server.config.enableStudio()
|
||||||
|
|
||||||
await server.videoStudio.createEditionTasks({
|
await server.videoStudio.createEditionTasks({
|
||||||
|
|
|
@ -87,7 +87,7 @@ describe('Test videos files', function () {
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
await servers[0].config.enableTranscoding(true, true)
|
await servers[0].config.enableTranscoding({ hls: true, webVideo: true })
|
||||||
|
|
||||||
{
|
{
|
||||||
const { uuid } = await servers[0].videos.quickUpload({ name: 'both 1' })
|
const { uuid } = await servers[0].videos.quickUpload({ name: 'both 1' })
|
||||||
|
@ -108,7 +108,7 @@ describe('Test videos files', function () {
|
||||||
await waitJobs(servers)
|
await waitJobs(servers)
|
||||||
|
|
||||||
{
|
{
|
||||||
await servers[0].config.enableTranscoding(false, true)
|
await servers[0].config.enableTranscoding({ hls: true, webVideo: false })
|
||||||
const { uuid } = await servers[0].videos.quickUpload({ name: 'hls' })
|
const { uuid } = await servers[0].videos.quickUpload({ name: 'hls' })
|
||||||
hlsId = uuid
|
hlsId = uuid
|
||||||
}
|
}
|
||||||
|
@ -116,7 +116,7 @@ describe('Test videos files', function () {
|
||||||
await waitJobs(servers)
|
await waitJobs(servers)
|
||||||
|
|
||||||
{
|
{
|
||||||
await servers[0].config.enableTranscoding(false, true)
|
await servers[0].config.enableTranscoding({ webVideo: true, hls: false })
|
||||||
const { uuid } = await servers[0].videos.quickUpload({ name: 'web-video' })
|
const { uuid } = await servers[0].videos.quickUpload({ name: 'web-video' })
|
||||||
webVideoId = uuid
|
webVideoId = uuid
|
||||||
}
|
}
|
||||||
|
|
|
@ -133,7 +133,7 @@ describe('Fast restream in live', function () {
|
||||||
await setAccessTokensToServers([ server ])
|
await setAccessTokensToServers([ server ])
|
||||||
await setDefaultVideoChannel([ server ])
|
await setDefaultVideoChannel([ server ])
|
||||||
|
|
||||||
await server.config.enableMinimumTranscoding(false, true)
|
await server.config.enableMinimumTranscoding({ webVideo: false, hls: true })
|
||||||
await server.config.enableLive({ allowReplay: true, transcoding: true, resolutions: 'min' })
|
await server.config.enableLive({ allowReplay: true, transcoding: true, resolutions: 'min' })
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
|
@ -40,7 +40,7 @@ describe('Test runner common actions', function () {
|
||||||
await setAccessTokensToServers([ server ])
|
await setAccessTokensToServers([ server ])
|
||||||
await setDefaultVideoChannel([ server ])
|
await setDefaultVideoChannel([ server ])
|
||||||
|
|
||||||
await server.config.enableTranscoding(true, true)
|
await server.config.enableTranscoding({ hls: true, webVideo: true })
|
||||||
await server.config.enableRemoteTranscoding()
|
await server.config.enableRemoteTranscoding()
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
|
@ -23,7 +23,7 @@ describe('Test runner socket', function () {
|
||||||
await setAccessTokensToServers([ server ])
|
await setAccessTokensToServers([ server ])
|
||||||
await setDefaultVideoChannel([ server ])
|
await setDefaultVideoChannel([ server ])
|
||||||
|
|
||||||
await server.config.enableTranscoding(true, true)
|
await server.config.enableTranscoding({ hls: true, webVideo: true })
|
||||||
await server.config.enableRemoteTranscoding()
|
await server.config.enableRemoteTranscoding()
|
||||||
runnerToken = await server.runners.autoRegisterRunner()
|
runnerToken = await server.runners.autoRegisterRunner()
|
||||||
})
|
})
|
||||||
|
|
|
@ -53,7 +53,7 @@ describe('Test runner video studio transcoding', function () {
|
||||||
|
|
||||||
await doubleFollow(servers[0], servers[1])
|
await doubleFollow(servers[0], servers[1])
|
||||||
|
|
||||||
await servers[0].config.enableTranscoding(true, true)
|
await servers[0].config.enableTranscoding({ hls: true, webVideo: true })
|
||||||
await servers[0].config.enableStudio()
|
await servers[0].config.enableStudio()
|
||||||
await servers[0].config.enableRemoteStudio()
|
await servers[0].config.enableRemoteStudio()
|
||||||
|
|
||||||
|
|
|
@ -85,7 +85,7 @@ describe('Test runner VOD transcoding', function () {
|
||||||
before(async function () {
|
before(async function () {
|
||||||
this.timeout(60000)
|
this.timeout(60000)
|
||||||
|
|
||||||
await servers[0].config.enableTranscoding(true, true)
|
await servers[0].config.enableTranscoding({ hls: true, webVideo: true })
|
||||||
})
|
})
|
||||||
|
|
||||||
it('Should error a transcoding job', async function () {
|
it('Should error a transcoding job', async function () {
|
||||||
|
@ -133,7 +133,7 @@ describe('Test runner VOD transcoding', function () {
|
||||||
this.timeout(60000)
|
this.timeout(60000)
|
||||||
|
|
||||||
await servers[0].runnerJobs.cancelAllJobs()
|
await servers[0].runnerJobs.cancelAllJobs()
|
||||||
await servers[0].config.enableTranscoding(true, false)
|
await servers[0].config.enableTranscoding({ hls: false, webVideo: true })
|
||||||
|
|
||||||
const { uuid } = await servers[0].videos.quickUpload({ name: 'web video', fixture: 'video_short.webm' })
|
const { uuid } = await servers[0].videos.quickUpload({ name: 'web video', fixture: 'video_short.webm' })
|
||||||
videoUUID = uuid
|
videoUUID = uuid
|
||||||
|
@ -264,7 +264,7 @@ describe('Test runner VOD transcoding', function () {
|
||||||
before(async function () {
|
before(async function () {
|
||||||
this.timeout(60000)
|
this.timeout(60000)
|
||||||
|
|
||||||
await servers[0].config.enableTranscoding(false, true)
|
await servers[0].config.enableTranscoding({ hls: true, webVideo: false })
|
||||||
|
|
||||||
const { uuid } = await servers[0].videos.quickUpload({ name: 'hls video', fixture: 'video_short.webm' })
|
const { uuid } = await servers[0].videos.quickUpload({ name: 'hls video', fixture: 'video_short.webm' })
|
||||||
videoUUID = uuid
|
videoUUID = uuid
|
||||||
|
@ -384,7 +384,7 @@ describe('Test runner VOD transcoding', function () {
|
||||||
before(async function () {
|
before(async function () {
|
||||||
this.timeout(60000)
|
this.timeout(60000)
|
||||||
|
|
||||||
await servers[0].config.enableTranscoding(true, true)
|
await servers[0].config.enableTranscoding({ hls: true, webVideo: true })
|
||||||
|
|
||||||
await servers[0].videos.quickUpload({ name: 'web video and hls video', fixture: 'video_short.webm' })
|
await servers[0].videos.quickUpload({ name: 'web video and hls video', fixture: 'video_short.webm' })
|
||||||
|
|
||||||
|
@ -422,7 +422,7 @@ describe('Test runner VOD transcoding', function () {
|
||||||
before(async function () {
|
before(async function () {
|
||||||
this.timeout(60000)
|
this.timeout(60000)
|
||||||
|
|
||||||
await servers[0].config.enableTranscoding(true, true)
|
await servers[0].config.enableTranscoding({ hls: true, webVideo: true })
|
||||||
|
|
||||||
const attributes = { name: 'audio_with_preview', previewfile: 'custom-preview.jpg', fixture: 'sample.ogg' }
|
const attributes = { name: 'audio_with_preview', previewfile: 'custom-preview.jpg', fixture: 'sample.ogg' }
|
||||||
const { uuid } = await servers[0].videos.upload({ attributes, mode: 'legacy' })
|
const { uuid } = await servers[0].videos.upload({ attributes, mode: 'legacy' })
|
||||||
|
|
|
@ -25,7 +25,7 @@ describe('Test videos files', function () {
|
||||||
|
|
||||||
await doubleFollow(servers[0], servers[1])
|
await doubleFollow(servers[0], servers[1])
|
||||||
|
|
||||||
await servers[0].config.enableTranscoding(true, true)
|
await servers[0].config.enableTranscoding({ hls: true, webVideo: true })
|
||||||
})
|
})
|
||||||
|
|
||||||
describe('When deleting all files', function () {
|
describe('When deleting all files', function () {
|
||||||
|
|
|
@ -114,7 +114,7 @@ describe('Test a video file replacement', function () {
|
||||||
|
|
||||||
const previousPaths: string[] = []
|
const previousPaths: string[] = []
|
||||||
|
|
||||||
await servers[0].config.enableTranscoding(true, true, true)
|
await servers[0].config.enableTranscoding({ hls: true, webVideo: true, with0p: true })
|
||||||
|
|
||||||
const { uuid: videoUUID } = await servers[0].videos.quickUpload({ name: 'fs with transcoding', fixture: 'video_short_720p.mp4' })
|
const { uuid: videoUUID } = await servers[0].videos.quickUpload({ name: 'fs with transcoding', fixture: 'video_short_720p.mp4' })
|
||||||
uuid = videoUUID
|
uuid = videoUUID
|
||||||
|
@ -387,7 +387,7 @@ describe('Test a video file replacement', function () {
|
||||||
|
|
||||||
const previousPaths: string[] = []
|
const previousPaths: string[] = []
|
||||||
|
|
||||||
await servers[0].config.enableTranscoding(true, true, true)
|
await servers[0].config.enableTranscoding({ hls: true, webVideo: true, with0p: true })
|
||||||
|
|
||||||
const { uuid: videoUUID } = await servers[0].videos.quickUpload({
|
const { uuid: videoUUID } = await servers[0].videos.quickUpload({
|
||||||
name: 'object storage with transcoding',
|
name: 'object storage with transcoding',
|
||||||
|
|
|
@ -468,19 +468,19 @@ describe('Test videos filter', function () {
|
||||||
|
|
||||||
const finderFactory = (name: string) => (videos: Video[]) => videos.some(v => v.name === name)
|
const finderFactory = (name: string) => (videos: Video[]) => videos.some(v => v.name === name)
|
||||||
|
|
||||||
await servers[0].config.enableTranscoding(true, false)
|
await servers[0].config.enableTranscoding({ hls: false, webVideo: true })
|
||||||
await servers[0].videos.upload({ attributes: { name: 'web video' } })
|
await servers[0].videos.upload({ attributes: { name: 'web video' } })
|
||||||
const hasWebVideo = finderFactory('web video')
|
const hasWebVideo = finderFactory('web video')
|
||||||
|
|
||||||
await waitJobs(servers)
|
await waitJobs(servers)
|
||||||
|
|
||||||
await servers[0].config.enableTranscoding(false, true)
|
await servers[0].config.enableTranscoding({ hls: true, webVideo: false })
|
||||||
await servers[0].videos.upload({ attributes: { name: 'hls video' } })
|
await servers[0].videos.upload({ attributes: { name: 'hls video' } })
|
||||||
const hasHLS = finderFactory('hls video')
|
const hasHLS = finderFactory('hls video')
|
||||||
|
|
||||||
await waitJobs(servers)
|
await waitJobs(servers)
|
||||||
|
|
||||||
await servers[0].config.enableTranscoding(true, true)
|
await servers[0].config.enableTranscoding({ hls: true, webVideo: true })
|
||||||
await servers[0].videos.upload({ attributes: { name: 'hls and web video' } })
|
await servers[0].videos.upload({ attributes: { name: 'hls and web video' } })
|
||||||
const hasBoth = finderFactory('hls and web video')
|
const hasBoth = finderFactory('hls and web video')
|
||||||
|
|
||||||
|
|
|
@ -139,7 +139,7 @@ describe('Test Live transcoding in peertube-runner program', function () {
|
||||||
sqlCommandServer1 = new SQLCommand(servers[0])
|
sqlCommandServer1 = new SQLCommand(servers[0])
|
||||||
|
|
||||||
await servers[0].config.enableRemoteTranscoding()
|
await servers[0].config.enableRemoteTranscoding()
|
||||||
await servers[0].config.enableTranscoding(true, true, true)
|
await servers[0].config.enableTranscoding({ hls: true, webVideo: true, with0p: true })
|
||||||
await servers[0].config.enableLive({ allowReplay: true, resolutions: 'max', transcoding: true })
|
await servers[0].config.enableLive({ allowReplay: true, resolutions: 'max', transcoding: true })
|
||||||
|
|
||||||
const registrationToken = await servers[0].runnerRegistrationTokens.getFirstRegistrationToken()
|
const registrationToken = await servers[0].runnerRegistrationTokens.getFirstRegistrationToken()
|
||||||
|
@ -152,7 +152,7 @@ describe('Test Live transcoding in peertube-runner program', function () {
|
||||||
describe('With lives on local filesystem storage', function () {
|
describe('With lives on local filesystem storage', function () {
|
||||||
|
|
||||||
before(async function () {
|
before(async function () {
|
||||||
await servers[0].config.enableTranscoding(true, false, true)
|
await servers[0].config.enableTranscoding({ webVideo: true, hls: false, with0p: true })
|
||||||
})
|
})
|
||||||
|
|
||||||
runSuite()
|
runSuite()
|
||||||
|
|
|
@ -68,7 +68,7 @@ describe('Test studio transcoding in peertube-runner program', function () {
|
||||||
|
|
||||||
await doubleFollow(servers[0], servers[1])
|
await doubleFollow(servers[0], servers[1])
|
||||||
|
|
||||||
await servers[0].config.enableTranscoding(true, true)
|
await servers[0].config.enableTranscoding({ hls: true, webVideo: true })
|
||||||
await servers[0].config.enableStudio()
|
await servers[0].config.enableStudio()
|
||||||
await servers[0].config.enableRemoteStudio()
|
await servers[0].config.enableRemoteStudio()
|
||||||
|
|
||||||
|
|
|
@ -201,7 +201,7 @@ describe('Test VOD transcoding in peertube-runner program', function () {
|
||||||
expect(getAllFiles(video)).to.have.lengthOf(1)
|
expect(getAllFiles(video)).to.have.lengthOf(1)
|
||||||
}
|
}
|
||||||
|
|
||||||
await servers[0].config.enableTranscoding(true, true, true)
|
await servers[0].config.enableTranscoding({ hls: true, webVideo: true, with0p: true })
|
||||||
|
|
||||||
await servers[0].videos.runTranscoding({ transcodingType: 'web-video', videoId: uuid })
|
await servers[0].videos.runTranscoding({ transcodingType: 'web-video', videoId: uuid })
|
||||||
await waitJobs(servers, { runnerJobs: true })
|
await waitJobs(servers, { runnerJobs: true })
|
||||||
|
@ -259,7 +259,7 @@ describe('Test VOD transcoding in peertube-runner program', function () {
|
||||||
describe('Web video only enabled', function () {
|
describe('Web video only enabled', function () {
|
||||||
|
|
||||||
before(async function () {
|
before(async function () {
|
||||||
await servers[0].config.enableTranscoding(true, false, true)
|
await servers[0].config.enableTranscoding({ webVideo: true, hls: false, with0p: true })
|
||||||
})
|
})
|
||||||
|
|
||||||
runSuite({ webVideoEnabled: true, hlsEnabled: false })
|
runSuite({ webVideoEnabled: true, hlsEnabled: false })
|
||||||
|
@ -268,7 +268,7 @@ describe('Test VOD transcoding in peertube-runner program', function () {
|
||||||
describe('HLS videos only enabled', function () {
|
describe('HLS videos only enabled', function () {
|
||||||
|
|
||||||
before(async function () {
|
before(async function () {
|
||||||
await servers[0].config.enableTranscoding(false, true, true)
|
await servers[0].config.enableTranscoding({ webVideo: false, hls: true, with0p: true })
|
||||||
})
|
})
|
||||||
|
|
||||||
runSuite({ webVideoEnabled: false, hlsEnabled: true })
|
runSuite({ webVideoEnabled: false, hlsEnabled: true })
|
||||||
|
@ -277,7 +277,7 @@ describe('Test VOD transcoding in peertube-runner program', function () {
|
||||||
describe('Web video & HLS enabled', function () {
|
describe('Web video & HLS enabled', function () {
|
||||||
|
|
||||||
before(async function () {
|
before(async function () {
|
||||||
await servers[0].config.enableTranscoding(true, true, true)
|
await servers[0].config.enableTranscoding({ hls: true, webVideo: true, with0p: true })
|
||||||
})
|
})
|
||||||
|
|
||||||
runSuite({ webVideoEnabled: true, hlsEnabled: true })
|
runSuite({ webVideoEnabled: true, hlsEnabled: true })
|
||||||
|
@ -303,7 +303,7 @@ describe('Test VOD transcoding in peertube-runner program', function () {
|
||||||
describe('Web video only enabled', function () {
|
describe('Web video only enabled', function () {
|
||||||
|
|
||||||
before(async function () {
|
before(async function () {
|
||||||
await servers[0].config.enableTranscoding(true, false, true)
|
await servers[0].config.enableTranscoding({ webVideo: true, hls: false, with0p: true })
|
||||||
})
|
})
|
||||||
|
|
||||||
runSuite({ webVideoEnabled: true, hlsEnabled: false, objectStorage })
|
runSuite({ webVideoEnabled: true, hlsEnabled: false, objectStorage })
|
||||||
|
@ -312,7 +312,7 @@ describe('Test VOD transcoding in peertube-runner program', function () {
|
||||||
describe('HLS videos only enabled', function () {
|
describe('HLS videos only enabled', function () {
|
||||||
|
|
||||||
before(async function () {
|
before(async function () {
|
||||||
await servers[0].config.enableTranscoding(false, true, true)
|
await servers[0].config.enableTranscoding({ webVideo: false, hls: true, with0p: true })
|
||||||
})
|
})
|
||||||
|
|
||||||
runSuite({ webVideoEnabled: false, hlsEnabled: true, objectStorage })
|
runSuite({ webVideoEnabled: false, hlsEnabled: true, objectStorage })
|
||||||
|
@ -321,7 +321,7 @@ describe('Test VOD transcoding in peertube-runner program', function () {
|
||||||
describe('Web video & HLS enabled', function () {
|
describe('Web video & HLS enabled', function () {
|
||||||
|
|
||||||
before(async function () {
|
before(async function () {
|
||||||
await servers[0].config.enableTranscoding(true, true, true)
|
await servers[0].config.enableTranscoding({ hls: true, webVideo: true, with0p: true })
|
||||||
})
|
})
|
||||||
|
|
||||||
runSuite({ webVideoEnabled: true, hlsEnabled: true, objectStorage })
|
runSuite({ webVideoEnabled: true, hlsEnabled: true, objectStorage })
|
||||||
|
|
|
@ -152,8 +152,13 @@ export class ConfigCommand extends AbstractCommand {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: convert args to object
|
enableTranscoding (options: {
|
||||||
enableTranscoding (webVideo = true, hls = true, with0p = false) {
|
webVideo?: boolean // default true
|
||||||
|
hls?: boolean // default true
|
||||||
|
with0p?: boolean // default false
|
||||||
|
} = {}) {
|
||||||
|
const { webVideo = true, hls = true, with0p = false } = options
|
||||||
|
|
||||||
return this.updateExistingSubConfig({
|
return this.updateExistingSubConfig({
|
||||||
newConfig: {
|
newConfig: {
|
||||||
transcoding: {
|
transcoding: {
|
||||||
|
@ -175,8 +180,12 @@ export class ConfigCommand extends AbstractCommand {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: convert args to object
|
enableMinimumTranscoding (options: {
|
||||||
enableMinimumTranscoding (webVideo = true, hls = true) {
|
webVideo?: boolean // default true
|
||||||
|
hls?: boolean // default true
|
||||||
|
} = {}) {
|
||||||
|
const { webVideo = true, hls = true } = options
|
||||||
|
|
||||||
return this.updateExistingSubConfig({
|
return this.updateExistingSubConfig({
|
||||||
newConfig: {
|
newConfig: {
|
||||||
transcoding: {
|
transcoding: {
|
||||||
|
|
Loading…
Reference in a new issue