Deprecate Node 8
The support ends on December 2019: https://github.com/nodejs/Release#release-schedule
This commit is contained in:
parent
0763044f7d
commit
51c3544718
8 changed files with 28 additions and 12 deletions
|
@ -147,7 +147,7 @@ Feel free to reach out if you have any questions or ideas! :speech_balloon:
|
||||||
* nginx
|
* nginx
|
||||||
* **PostgreSQL >= 9.6**
|
* **PostgreSQL >= 9.6**
|
||||||
* **Redis >= 2.8.18**
|
* **Redis >= 2.8.18**
|
||||||
* **NodeJS >= 8.x**
|
* **NodeJS >= 10.x**
|
||||||
* **yarn >= 1.x**
|
* **yarn >= 1.x**
|
||||||
* **FFmpeg >= 3.x**
|
* **FFmpeg >= 3.x**
|
||||||
|
|
||||||
|
|
|
@ -26,7 +26,7 @@ process.title = 'peertube'
|
||||||
const app = express()
|
const app = express()
|
||||||
|
|
||||||
// ----------- Core checker -----------
|
// ----------- Core checker -----------
|
||||||
import { checkMissedConfig, checkFFmpeg } from './server/initializers/checker-before-init'
|
import { checkMissedConfig, checkFFmpeg, checkNodeVersion } from './server/initializers/checker-before-init'
|
||||||
|
|
||||||
// Do not use barrels because we don't want to load all modules here (we need to initialize database first)
|
// Do not use barrels because we don't want to load all modules here (we need to initialize database first)
|
||||||
import { CONFIG } from './server/initializers/config'
|
import { CONFIG } from './server/initializers/config'
|
||||||
|
@ -45,6 +45,8 @@ checkFFmpeg(CONFIG)
|
||||||
process.exit(-1)
|
process.exit(-1)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
checkNodeVersion()
|
||||||
|
|
||||||
import { checkConfig, checkActivityPubUrls } from './server/initializers/checker-after-init'
|
import { checkConfig, checkActivityPubUrls } from './server/initializers/checker-after-init'
|
||||||
|
|
||||||
const errorMessage = checkConfig()
|
const errorMessage = checkConfig()
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import * as config from 'config'
|
import * as config from 'config'
|
||||||
import { promisify0 } from '../helpers/core-utils'
|
import { promisify0 } from '../helpers/core-utils'
|
||||||
|
import { logger } from '../helpers/logger'
|
||||||
|
|
||||||
// ONLY USE CORE MODULES IN THIS FILE!
|
// ONLY USE CORE MODULES IN THIS FILE!
|
||||||
|
|
||||||
|
@ -109,10 +110,23 @@ async function checkFFmpegEncoders (): Promise<Map<string, boolean>> {
|
||||||
return supportedOptionalEncoders
|
return supportedOptionalEncoders
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function checkNodeVersion () {
|
||||||
|
const v = process.version
|
||||||
|
const majorString = v.split('.')[0].replace('v', '')
|
||||||
|
const major = parseInt(majorString, 10)
|
||||||
|
|
||||||
|
logger.debug('Checking NodeJS version %s.', v)
|
||||||
|
|
||||||
|
if (major < 10) {
|
||||||
|
logger.warn('Your NodeJS version %s is deprecated. Please use Node 10.', v)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// ---------------------------------------------------------------------------
|
// ---------------------------------------------------------------------------
|
||||||
|
|
||||||
export {
|
export {
|
||||||
checkFFmpeg,
|
checkFFmpeg,
|
||||||
checkFFmpegEncoders,
|
checkFFmpegEncoders,
|
||||||
checkMissedConfig
|
checkMissedConfig,
|
||||||
|
checkNodeVersion
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,5 +4,5 @@ set -eu
|
||||||
|
|
||||||
videosFiles=$(find server/tests/api/videos -type f | grep -v index.ts | xargs echo)
|
videosFiles=$(find server/tests/api/videos -type f | grep -v index.ts | xargs echo)
|
||||||
|
|
||||||
MOCHA_PARALLEL=true npm run mocha -- --timeout 30000 --exit --require ts-node/register --bail \
|
npm run mocha -- --timeout 30000 --exit --require ts-node/register --bail \
|
||||||
$videosFiles
|
$videosFiles
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
|
|
||||||
3. Install certbot (choose instructions for nginx and your distribution) :
|
3. Install certbot (choose instructions for nginx and your distribution) :
|
||||||
[https://certbot.eff.org/all-instructions](https://certbot.eff.org/all-instructions)
|
[https://certbot.eff.org/all-instructions](https://certbot.eff.org/all-instructions)
|
||||||
4. Install NodeJS 8.x:
|
4. Install NodeJS 10.x:
|
||||||
[https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions](https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions)
|
[https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions](https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions)
|
||||||
5. Install yarn, and be sure to have [a recent version](https://github.com/yarnpkg/yarn/releases/latest):
|
5. Install yarn, and be sure to have [a recent version](https://github.com/yarnpkg/yarn/releases/latest):
|
||||||
[https://yarnpkg.com/en/docs/install#linux-tab](https://yarnpkg.com/en/docs/install#linux-tab)
|
[https://yarnpkg.com/en/docs/install#linux-tab](https://yarnpkg.com/en/docs/install#linux-tab)
|
||||||
|
@ -66,7 +66,7 @@ $ sudo systemctl start redis postgresql
|
||||||
|
|
||||||
## CentOS 7
|
## CentOS 7
|
||||||
|
|
||||||
1. Install NodeJS 8.x:
|
1. Install NodeJS 10.x:
|
||||||
[https://nodejs.org/en/download/package-manager/#enterprise-linux-and-fedora](https://nodejs.org/en/download/package-manager/#enterprise-linux-and-fedora)
|
[https://nodejs.org/en/download/package-manager/#enterprise-linux-and-fedora](https://nodejs.org/en/download/package-manager/#enterprise-linux-and-fedora)
|
||||||
2. Install yarn:
|
2. Install yarn:
|
||||||
[https://yarnpkg.com/en/docs/install](https://yarnpkg.com/en/docs/install)
|
[https://yarnpkg.com/en/docs/install](https://yarnpkg.com/en/docs/install)
|
||||||
|
@ -121,7 +121,7 @@ su my-peertube-user
|
||||||
```
|
```
|
||||||
2. (Optional) Install certbot (choose instructions for nginx and your distribution) :
|
2. (Optional) Install certbot (choose instructions for nginx and your distribution) :
|
||||||
[https://certbot.eff.org/all-instructions](https://certbot.eff.org/all-instructions)
|
[https://certbot.eff.org/all-instructions](https://certbot.eff.org/all-instructions)
|
||||||
3. Install NodeJS 8.x:
|
3. Install NodeJS 10.x:
|
||||||
[https://nodejs.org/en/download/package-manager/#enterprise-linux-and-fedora](https://nodejs.org/en/download/package-manager/#enterprise-linux-and-fedora)
|
[https://nodejs.org/en/download/package-manager/#enterprise-linux-and-fedora](https://nodejs.org/en/download/package-manager/#enterprise-linux-and-fedora)
|
||||||
4. Install yarn:
|
4. Install yarn:
|
||||||
[https://yarnpkg.com/en/docs/install](https://yarnpkg.com/en/docs/install)
|
[https://yarnpkg.com/en/docs/install](https://yarnpkg.com/en/docs/install)
|
||||||
|
@ -155,7 +155,7 @@ sudo systemctl start redis.service
|
||||||
```
|
```
|
||||||
8. Firewall
|
8. Firewall
|
||||||
|
|
||||||
By default, you cannot acces your server via public IP. To do so, you must configure firewall:
|
By default, you cannot access your server via public IP. To do so, you must configure firewall:
|
||||||
```
|
```
|
||||||
# Ports used by peertube dev setup
|
# Ports used by peertube dev setup
|
||||||
sudo firewall-cmd --permanent --zone=public --add-port=3000/tcp
|
sudo firewall-cmd --permanent --zone=public --add-port=3000/tcp
|
||||||
|
|
|
@ -36,7 +36,7 @@ You need to follow all the following steps even if you are on a PeerTube server
|
||||||
### Dependencies
|
### Dependencies
|
||||||
|
|
||||||
Install the [PeerTube dependencies](dependencies.md) except PostgreSQL and Redis.
|
Install the [PeerTube dependencies](dependencies.md) except PostgreSQL and Redis.
|
||||||
PeerTube only supports NodeJS 8.x or 10.x.
|
PeerTube only supports NodeJS 10.x.
|
||||||
|
|
||||||
### Installation
|
### Installation
|
||||||
|
|
||||||
|
@ -280,7 +280,7 @@ To uninstall a plugin or a theme:
|
||||||
$ sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production npm run npm run plugin:uninstall -- --npm-name peertube-plugin-myplugin
|
$ sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production npm run npm run plugin:uninstall -- --npm-name peertube-plugin-myplugin
|
||||||
```
|
```
|
||||||
|
|
||||||
### REPL ([Read Eval Print Loop](https://nodejs.org/docs/latest-v8.x/api/repl.html))
|
### REPL ([Read Eval Print Loop](https://nodejs.org/docs/latest-v10.x/api/repl.html))
|
||||||
|
|
||||||
If you want to interact with the application libraries and objects even when PeerTube is not running, there is a REPL for that.
|
If you want to interact with the application libraries and objects even when PeerTube is not running, there is a REPL for that.
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@ RUN apt-get update -q && apt-get install -qy \
|
||||||
postgresql \
|
postgresql \
|
||||||
postgresql-contrib \
|
postgresql-contrib \
|
||||||
redis-server \
|
redis-server \
|
||||||
&& curl -sL https://deb.nodesource.com/setup_8.x | bash - \
|
&& curl -sL https://deb.nodesource.com/setup_10.x | bash - \
|
||||||
&& curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \
|
&& curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \
|
||||||
&& echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list \
|
&& echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list \
|
||||||
&& apt-get update \
|
&& apt-get update \
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
FROM node:8-stretch
|
FROM node:10-stretch
|
||||||
|
|
||||||
# Allow to pass extra options to the npm run build
|
# Allow to pass extra options to the npm run build
|
||||||
# eg: --light --light-fr to not build all client languages
|
# eg: --light --light-fr to not build all client languages
|
||||||
|
|
Loading…
Add table
Reference in a new issue