X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Finitializers%2Finstaller.ts;h=676f88653359e700784bf15ae208b34799561819;hb=6419509bde8d134da044b49fc0eaecc7f38a1c71;hp=c669606f87db28f1c791ea19bdaac398710b2482;hpb=df0b219d36bf6852cdf2a7ad09ed4a41c6bccefa;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/initializers/installer.ts b/server/initializers/installer.ts index c669606f8..676f88653 100644 --- a/server/initializers/installer.ts +++ b/server/initializers/installer.ts @@ -2,13 +2,14 @@ import * as passwordGenerator from 'password-generator' import { UserRole } from '../../shared' import { logger } from '../helpers/logger' import { createApplicationActor, createUserAccountAndChannelAndPlaylist } from '../lib/user' -import { UserModel } from '../models/account/user' +import { UserModel } from '../models/user/user' import { ApplicationModel } from '../models/application/application' import { OAuthClientModel } from '../models/oauth/oauth-client' import { applicationExist, clientsExist, usersExist } from './checker-after-init' -import { CACHE, CONFIG, HLS_PLAYLIST_DIRECTORY, LAST_MIGRATION_VERSION } from './constants' +import { FILES_CACHE, HLS_STREAMING_PLAYLIST_DIRECTORY, LAST_MIGRATION_VERSION, RESUMABLE_UPLOAD_DIRECTORY } from './constants' import { sequelizeTypescript } from './database' -import { remove, ensureDir } from 'fs-extra' +import { ensureDir, remove } from 'fs-extra' +import { CONFIG } from './config' async function installApplication () { try { @@ -24,7 +25,7 @@ async function installApplication () { }), // Directories - removeCacheDirectories() + removeCacheAndTmpDirectories() .then(() => createDirectoriesIfNotExist()) ]) } catch (err) { @@ -41,9 +42,9 @@ export { // --------------------------------------------------------------------------- -function removeCacheDirectories () { - const cacheDirectories = Object.keys(CACHE) - .map(k => CACHE[k].DIRECTORY) +function removeCacheAndTmpDirectories () { + const cacheDirectories = Object.keys(FILES_CACHE) + .map(k => FILES_CACHE[k].DIRECTORY) const tasks: Promise[] = [] @@ -53,13 +54,15 @@ function removeCacheDirectories () { tasks.push(remove(dir)) } + tasks.push(remove(CONFIG.STORAGE.TMP_DIR)) + return Promise.all(tasks) } function createDirectoriesIfNotExist () { const storage = CONFIG.STORAGE - const cacheDirectories = Object.keys(CACHE) - .map(k => CACHE[k].DIRECTORY) + const cacheDirectories = Object.keys(FILES_CACHE) + .map(k => FILES_CACHE[k].DIRECTORY) const tasks: Promise[] = [] for (const key of Object.keys(storage)) { @@ -74,7 +77,10 @@ function createDirectoriesIfNotExist () { } // Playlist directories - tasks.push(ensureDir(HLS_PLAYLIST_DIRECTORY)) + tasks.push(ensureDir(HLS_STREAMING_PLAYLIST_DIRECTORY)) + + // Resumable upload directory + tasks.push(ensureDir(RESUMABLE_UPLOAD_DIRECTORY)) return Promise.all(tasks) } @@ -125,6 +131,8 @@ async function createOAuthAdminIfNotExist () { // Our password is weak so do not validate it validatePassword = false + } else if (process.env.PT_INITIAL_ROOT_PASSWORD) { + password = process.env.PT_INITIAL_ROOT_PASSWORD } else { password = passwordGenerator(16, true) } @@ -141,7 +149,7 @@ async function createOAuthAdminIfNotExist () { } const user = new UserModel(userData) - await createUserAccountAndChannelAndPlaylist(user, validatePassword) + await createUserAccountAndChannelAndPlaylist({ userToCreate: user, channelNames: undefined, validateUser: validatePassword }) logger.info('Username: ' + username) logger.info('User password: ' + password) }