1
0
Fork 0
mirror of https://github.com/Chocobozzz/PeerTube.git synced 2025-10-04 10:19:35 +02:00

peertube-import-videos.ts: add --tmpdir, --first, --last and --verbose [level] parameters (#2045)

* peertube-import-videos.ts: add --tmpdir <tmpdir> parameter, used to designate working directory for downloading and converting imported videos

* peertube-import-videos.ts: add --first and --last parameters to limit processing of the returned playlist to the first/last N elements

* peertube-import-videos.ts: add --verbose [verbosity] parameter, set this from 0 (only errors are reported) to 4 (for trace debugging), default is 2 (info). When --verbose is used without the optional parameter the logging level is set to 3 (debug). At level 1 (warn) it will only report on successfully uploaded videos (and/or errors), use this when running peertube-import-videos in a cron job to mirror a channel.

* package.json: remove dependency on loglevel

cli.ts: add getLogger(loglevel), to be used in CLI tools, add --verbose to set log level

peertube-import-videos: use getLogger (from cli) instead of loglevel, add error_exit (log error and exit), move --verbose to cli.ts, etc.

* cli.ts: remove superfluous reference to default logging level

* peertube-import-videos: exit_error -> exitError
This commit is contained in:
Frank de Lange 2019-08-26 11:35:28 +02:00 committed by Chocobozzz
parent f3ea7ecee1
commit bda3b70537
2 changed files with 81 additions and 37 deletions

View file

@ -5,6 +5,7 @@ import { root } from '../../shared/extra-utils/miscs/miscs'
import { getVideoChannel } from '../../shared/extra-utils/videos/video-channels'
import { Command } from 'commander'
import { VideoChannel, VideoPrivacy } from '../../shared/models/videos'
import { createLogger, format, transports } from 'winston'
let configName = 'PeerTube/CLI'
if (isTestInstance()) configName += `-${getAppNumber()}`
@ -119,6 +120,7 @@ function buildCommonVideoOptions (command: Command) {
.option('-m, --comments-enabled', 'Enable comments')
.option('-s, --support <support>', 'Video support text')
.option('-w, --wait-transcoding', 'Wait transcoding before publishing the video')
.option('-v, --verbose <verbose>', 'Verbosity, from 0/\'error\' to 4/\'debug\'', 'info')
}
async function buildVideoAttributesFromCommander (url: string, command: Command, defaultAttributes: any = {}) {
@ -175,11 +177,42 @@ function getServerCredentials (program: any) {
})
}
function getLogger (logLevel = 'info') {
const logLevels = {
0: 0,
error: 0,
1: 1,
warn: 1,
2: 2,
info: 2,
3: 3,
verbose: 3,
4: 4,
debug: 4
}
const logger = createLogger({
levels: logLevels,
format: format.combine(
format.splat(),
format.simple()
),
transports: [
new (transports.Console)({
level: logLevel
})
]
})
return logger
}
// ---------------------------------------------------------------------------
export {
version,
config,
getLogger,
getSettings,
getNetrc,
getRemoteObjectOrDie,