import { join } from 'path'
import * as youtubeDL from 'youtube-dl'
import { VideoPrivacy } from '../../shared/models/videos'
-import { unlinkPromise } from '../helpers/core-utils'
import { doRequestAndSaveToFile } from '../helpers/requests'
import { CONSTRAINTS_FIELDS } from '../initializers'
-import { getClient, getVideoCategories, login, searchVideo, uploadVideo } from '../tests/utils'
+import { getClient, getVideoCategories, login, searchVideoWithSort, uploadVideo } from '../tests/utils'
import { truncate } from 'lodash'
import * as prompt from 'prompt'
+import { remove } from 'fs-extra'
program
.option('-u, --url <url>', 'Server url')
let accessToken: string
let client: { id: string, secret: string }
-
+
const processOptions = {
cwd: __dirname,
maxBuffer: Infinity
}
async function promptPassword () {
- return new Promise ( res => {
- prompt.start()
- const schema = {
- properties: {
- password: {
- hidden: true,
- required: true
- }
- }
- }
- prompt.get(schema, function (err, result) {
- if (err) {
- console.log(err.message)
- return res();
- }
- return res(result.password)
- })
+ return new Promise((res, rej) => {
+ prompt.start()
+ const schema = {
+ properties: {
+ password: {
+ hidden: true,
+ required: true
+ }
+ }
+ }
+ prompt.get(schema, function (err, result) {
+ if (err) {
+ return rej(err)
+ }
+ return res(result.password)
+ })
})
}
if (!user.password) {
user.password = await promptPassword()
}
-
+
const res = await getClient(program['url'])
client = {
id: res.body.client_id,
const videoInfo = await fetchObject(info)
if (program['verbose']) console.log('Fetched object.', videoInfo)
- const result = await searchVideo(program['url'], videoInfo.title)
+ const result = await searchVideoWithSort(program['url'], videoInfo.title, '-match')
console.log('############################################################\n')
licence,
language,
nsfw: isNSFW(videoInfo),
+ waitTranscoding: true,
commentsEnabled: true,
description: videoInfo.description || undefined,
support: undefined,
}
}
- await unlinkPromise(videoPath)
- if (thumbnailfile) {
- await unlinkPromise(thumbnailfile)
- }
+ await remove(videoPath)
+ if (thumbnailfile) await remove(thumbnailfile)
console.log('Uploaded video "%s"!\n', videoAttributes.name)
}