From 2519d9fec6f84906d1b10770be791ad367186ca7 Mon Sep 17 00:00:00 2001 From: LecygneNoir Date: Mon, 19 Feb 2018 09:42:43 +0100 Subject: [PATCH] add import-youtube guide inside documentation (#298) * add import-youtube guide inside documentation * safer to use unlink instead of rm to delete symbolic link, avoid risk of deleting entire directories in case of syntax error * spelling mistake corrections * anonymise URLs * git also needed as dependencies to run yarn install --- support/doc/dependencies.md | 4 +-- support/doc/import-youtube.md | 57 +++++++++++++++++++++++++++++++++++ support/doc/production.md | 4 +-- 3 files changed, 61 insertions(+), 4 deletions(-) create mode 100644 support/doc/import-youtube.md diff --git a/support/doc/dependencies.md b/support/doc/dependencies.md index 4ced42b8b..a4a30374c 100644 --- a/support/doc/dependencies.md +++ b/support/doc/dependencies.md @@ -10,7 +10,7 @@ ``` $ sudo apt update -$ sudo apt install nginx ffmpeg postgresql openssl g++ make redis-server +$ sudo apt install nginx ffmpeg postgresql openssl g++ make redis-server git ``` ## Arch Linux @@ -36,7 +36,7 @@ $ sudo pacman -S nodejs yarn ffmpeg postgresql openssl redis $ sudo yum update $ sudo yum install epel-release $ sudo yum update -$ sudo yum install nginx postgresql postgresql-server openssl gcc make redis +$ sudo yum install nginx postgresql postgresql-server openssl gcc make redis git ``` ## Other distributions diff --git a/support/doc/import-youtube.md b/support/doc/import-youtube.md new file mode 100644 index 000000000..3b8b515a7 --- /dev/null +++ b/support/doc/import-youtube.md @@ -0,0 +1,57 @@ +# Import videos from Youtube guide + +You can use this script to import videos from Youtube channel to Peertube. +Be sure you own the videos or have the author's authorization to do so. + + - [Installation](#installation) + - [Usage](#usage) + +## Installation + +## Prerequisites + +You need at least 512MB RAM to run the script. +Importation can be launched directly from a peertube server (in this case you already have dependencies installed :+1:) or from a separate server, even a dekstop PC. + +### Dependencies + +If you do not run the script from a Peertube server, you need to follow the steps of the [dependencies guide](dependencies.md). + +### Installation + +Clone the Peertube repo to get the latest version inside your server: + +``` +git clone https://github.com/Chocobozzz/PeerTube.git +CLONE="$(pwd)/Peertube" +``` + +Run ``yarn install`` +``` +cd ${CLONE} +yarn install +``` + +Build server tools: +``` +cd ${CLONE} +npm run build:server +``` + + +## Usage + +You are now ready to run the script : + +``` +cd ${CLONE} +node dist/server/tools/import-youtube.js -u "PEERTUBE_URL" -U "PEERTUBE_USER" --password "PEERTUBE_PASSWORD" -y "YOUTUBE_URL" +``` + + - PEERTUBE_URL : the full URL of your peertube server where you want to import, eg: https://peertube.cpy.re/ + - PEERTUBE_USER : your peertube account where videos will be uploaded + - PEERTUBE_PASSWORD : password of your peertube account + - YOUTUBE_URL : the youtube channel you want to import. Supports Youtube channel (eg https://www.youtube.com/channel/ChannelId) or Youtube user (eg: https://www.youtube.com/c/UserName or https://www.youtube.com/user/UserName) + + The script will get all public videos from Youtube, download them, then upload to Peertube. + Already downloaded videos will not be uploaded twice, so you can run and re-run the script in case of crash, disconnection, ... without problem. \ No newline at end of file diff --git a/support/doc/production.md b/support/doc/production.md index fc2bd460a..6d6cd68f8 100644 --- a/support/doc/production.md +++ b/support/doc/production.md @@ -202,7 +202,7 @@ Change the link to point to the latest version: ``` $ cd /var/www/peertube && \ - sudo rm ./peertube-latest && \ + sudo unlink ./peertube-latest && \ sudo -u peertube ln -s versions/peertube-${VERSION} ./peertube-latest ``` @@ -218,7 +218,7 @@ Change `peertube-latest` destination to the previous version and restore your SQ ``` $ OLD_VERSION="v0.42.42" && SQL_BACKUP_PATH="backup/sql-peertube_prod-2018-01-19T10:18+01:00.bak" && \ - cd /var/www/peertube && rm ./peertube-latest && \ + cd /var/www/peertube && unlink ./peertube-latest && \ sudo -u peertube ln -s "versions/peertube-$OLD_VERSION" peertube-latest && \ pg_restore -U peertube -W -h localhost -c -d peertube_prod "$SQL_BACKUP_PATH" sudo systemctl restart peertube -- 2.25.1