aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorChocobozzz <florian.bigard@gmail.com>2016-10-07 11:08:55 +0200
committerChocobozzz <florian.bigard@gmail.com>2016-10-07 13:59:06 +0200
commitbf94b6f0a1ac2cd5304f5cc7f85434120489cab8 (patch)
tree5cdf45935c8e574c3232b095b43ae17189603164
parent82e624233f22eba0230383c7de8a9ed3b69791a6 (diff)
downloadPeerTube-bf94b6f0a1ac2cd5304f5cc7f85434120489cab8.tar.gz
PeerTube-bf94b6f0a1ac2cd5304f5cc7f85434120489cab8.tar.zst
PeerTube-bf94b6f0a1ac2cd5304f5cc7f85434120489cab8.zip
Server: update to webseed implementation (tests, lint...)
-rw-r--r--package.json3
-rw-r--r--server/initializers/constants.js3
-rw-r--r--server/models/video.js7
-rw-r--r--server/tests/api/multiple-pods.js8
-rw-r--r--server/tests/api/single-pod.js7
-rw-r--r--server/tests/api/users.js3
6 files changed, 8 insertions, 23 deletions
diff --git a/package.json b/package.json
index 59c7a4332..909c18176 100644
--- a/package.json
+++ b/package.json
@@ -69,7 +69,8 @@
69 "commander": "^2.9.0", 69 "commander": "^2.9.0",
70 "mocha": "^3.0.1", 70 "mocha": "^3.0.1",
71 "standard": "^8.0.0", 71 "standard": "^8.0.0",
72 "supertest": "^2.0.0" 72 "supertest": "^2.0.0",
73 "webtorrent": "^0.97.0"
73 }, 74 },
74 "standard": { 75 "standard": {
75 "ignore": [ 76 "ignore": [
diff --git a/server/initializers/constants.js b/server/initializers/constants.js
index be2e3e943..75065fe72 100644
--- a/server/initializers/constants.js
+++ b/server/initializers/constants.js
@@ -42,7 +42,8 @@ const CONFIG = {
42 CERT_DIR: path.join(__dirname, '..', '..', config.get('storage.certs')), 42 CERT_DIR: path.join(__dirname, '..', '..', config.get('storage.certs')),
43 LOG_DIR: path.join(__dirname, '..', '..', config.get('storage.logs')), 43 LOG_DIR: path.join(__dirname, '..', '..', config.get('storage.logs')),
44 UPLOAD_DIR: path.join(__dirname, '..', '..', config.get('storage.uploads')), 44 UPLOAD_DIR: path.join(__dirname, '..', '..', config.get('storage.uploads')),
45 THUMBNAILS_DIR: path.join(__dirname, '..', '..', config.get('storage.thumbnails')) 45 THUMBNAILS_DIR: path.join(__dirname, '..', '..', config.get('storage.thumbnails')),
46 TORRENTS_DIR: path.join(__dirname, '..', '..', config.get('storage.torrents'))
46 }, 47 },
47 WEBSERVER: { 48 WEBSERVER: {
48 SCHEME: config.get('webserver.https') === true ? 'https' : 'http', 49 SCHEME: config.get('webserver.https') === true ? 'https' : 'http',
diff --git a/server/models/video.js b/server/models/video.js
index 7d073cffa..9272bea6d 100644
--- a/server/models/video.js
+++ b/server/models/video.js
@@ -19,9 +19,6 @@ const utils = require('../helpers/utils')
19const http = config.get('webserver.https') === true ? 'https' : 'http' 19const http = config.get('webserver.https') === true ? 'https' : 'http'
20const host = config.get('webserver.host') 20const host = config.get('webserver.host')
21const port = config.get('webserver.port') 21const port = config.get('webserver.port')
22const uploadsDir = pathUtils.join(__dirname, '..', '..', config.get('storage.uploads'))
23const thumbnailsDir = pathUtils.join(__dirname, '..', '..', config.get('storage.thumbnails'))
24const torrentsDir = pathUtils.join(__dirname, '..', '..', config.get('storage.torrents'))
25const webseedBaseUrl = http + '://' + host + ':' + port + constants.STATIC_PATHS.WEBSEED 22const webseedBaseUrl = http + '://' + host + ':' + port + constants.STATIC_PATHS.WEBSEED
26 23
27// --------------------------------------------------------------------------- 24// ---------------------------------------------------------------------------
@@ -112,7 +109,7 @@ VideoSchema.pre('save', function (next) {
112 createTorrent(videoPath, { announceList: [ [ 'ws://' + host + ':' + port + '/tracker/socket' ] ], urlList: [ webseedBaseUrl + video.filename ] }, function (err, torrent) { 109 createTorrent(videoPath, { announceList: [ [ 'ws://' + host + ':' + port + '/tracker/socket' ] ], urlList: [ webseedBaseUrl + video.filename ] }, function (err, torrent) {
113 if (err) return callback(err) 110 if (err) return callback(err)
114 111
115 fs.writeFile(torrentsDir + video.filename + '.torrent', torrent, function (err) { 112 fs.writeFile(constants.CONFIG.STORAGE.TORRENTS_DIR + video.filename + '.torrent', torrent, function (err) {
116 if (err) return callback(err) 113 if (err) return callback(err)
117 114
118 const parsedTorrent = parseTorrent(torrent) 115 const parsedTorrent = parseTorrent(torrent)
@@ -263,7 +260,7 @@ function removeFile (video, callback) {
263 260
264// Maybe the torrent is not seeded, but we catch the error to don't stop the removing process 261// Maybe the torrent is not seeded, but we catch the error to don't stop the removing process
265function removeTorrent (video, callback) { 262function removeTorrent (video, callback) {
266 fs.unlink(torrentsDir + video.filename + '.torrent') 263 fs.unlink(constants.CONFIG.STORAGE.TORRENTS_DIR + video.filename + '.torrent', callback)
267} 264}
268 265
269function createThumbnail (videoPath, callback) { 266function createThumbnail (videoPath, callback) {
diff --git a/server/tests/api/multiple-pods.js b/server/tests/api/multiple-pods.js
index b86f88c22..87fab791c 100644
--- a/server/tests/api/multiple-pods.js
+++ b/server/tests/api/multiple-pods.js
@@ -3,16 +3,14 @@
3const chai = require('chai') 3const chai = require('chai')
4const each = require('async/each') 4const each = require('async/each')
5const expect = chai.expect 5const expect = chai.expect
6const pathUtils = require('path')
7const series = require('async/series') 6const series = require('async/series')
7const webtorrent = new (require('webtorrent'))()
8 8
9const loginUtils = require('../utils/login') 9const loginUtils = require('../utils/login')
10const miscsUtils = require('../utils/miscs') 10const miscsUtils = require('../utils/miscs')
11const podsUtils = require('../utils/pods') 11const podsUtils = require('../utils/pods')
12const serversUtils = require('../utils/servers') 12const serversUtils = require('../utils/servers')
13const videosUtils = require('../utils/videos') 13const videosUtils = require('../utils/videos')
14const webtorrent = require(pathUtils.join(__dirname, '../../lib/webtorrent'))
15webtorrent.silent = true
16 14
17describe('Test multiple pods', function () { 15describe('Test multiple pods', function () {
18 let servers = [] 16 let servers = []
@@ -53,9 +51,6 @@ describe('Test multiple pods', function () {
53 function (next) { 51 function (next) {
54 const server = servers[0] 52 const server = servers[0]
55 podsUtils.makeFriends(server.url, server.accessToken, next) 53 podsUtils.makeFriends(server.url, server.accessToken, next)
56 },
57 function (next) {
58 webtorrent.create({ host: 'client', port: '1' }, next)
59 } 54 }
60 ], done) 55 ], done)
61 }) 56 })
@@ -415,7 +410,6 @@ describe('Test multiple pods', function () {
415 servers.forEach(function (server) { 410 servers.forEach(function (server) {
416 process.kill(-server.app.pid) 411 process.kill(-server.app.pid)
417 }) 412 })
418 process.kill(-webtorrent.app.pid)
419 413
420 // Keep the logs if the test failed 414 // Keep the logs if the test failed
421 if (this.ok) { 415 if (this.ok) {
diff --git a/server/tests/api/single-pod.js b/server/tests/api/single-pod.js
index bdaaee46c..623a1a6a3 100644
--- a/server/tests/api/single-pod.js
+++ b/server/tests/api/single-pod.js
@@ -7,13 +7,12 @@ const fs = require('fs')
7const keyBy = require('lodash/keyBy') 7const keyBy = require('lodash/keyBy')
8const pathUtils = require('path') 8const pathUtils = require('path')
9const series = require('async/series') 9const series = require('async/series')
10const webtorrent = new (require('webtorrent'))()
10 11
11const loginUtils = require('../utils/login') 12const loginUtils = require('../utils/login')
12const miscsUtils = require('../utils/miscs') 13const miscsUtils = require('../utils/miscs')
13const serversUtils = require('../utils/servers') 14const serversUtils = require('../utils/servers')
14const videosUtils = require('../utils/videos') 15const videosUtils = require('../utils/videos')
15const webtorrent = require(pathUtils.join(__dirname, '../../lib/webtorrent'))
16webtorrent.silent = true
17 16
18describe('Test a single pod', function () { 17describe('Test a single pod', function () {
19 let server = null 18 let server = null
@@ -39,9 +38,6 @@ describe('Test a single pod', function () {
39 server.accessToken = token 38 server.accessToken = token
40 next() 39 next()
41 }) 40 })
42 },
43 function (next) {
44 webtorrent.create({ host: 'client', port: '1' }, next)
45 } 41 }
46 ], done) 42 ], done)
47 }) 43 })
@@ -496,7 +492,6 @@ describe('Test a single pod', function () {
496 492
497 after(function (done) { 493 after(function (done) {
498 process.kill(-server.app.pid) 494 process.kill(-server.app.pid)
499 process.kill(-webtorrent.app.pid)
500 495
501 // Keep the logs if the test failed 496 // Keep the logs if the test failed
502 if (this.ok) { 497 if (this.ok) {
diff --git a/server/tests/api/users.js b/server/tests/api/users.js
index c6c892bf2..94267f104 100644
--- a/server/tests/api/users.js
+++ b/server/tests/api/users.js
@@ -2,7 +2,6 @@
2 2
3const chai = require('chai') 3const chai = require('chai')
4const expect = chai.expect 4const expect = chai.expect
5const pathUtils = require('path')
6const series = require('async/series') 5const series = require('async/series')
7 6
8const loginUtils = require('../utils/login') 7const loginUtils = require('../utils/login')
@@ -10,8 +9,6 @@ const podsUtils = require('../utils/pods')
10const serversUtils = require('../utils/servers') 9const serversUtils = require('../utils/servers')
11const usersUtils = require('../utils/users') 10const usersUtils = require('../utils/users')
12const videosUtils = require('../utils/videos') 11const videosUtils = require('../utils/videos')
13const webtorrent = require(pathUtils.join(__dirname, '../../lib/webtorrent'))
14webtorrent.silent = true
15 12
16describe('Test users', function () { 13describe('Test users', function () {
17 let server = null 14 let server = null