Add automated dev setup using Gitpod

pull/1773/head
Jan Keromnes 2019-01-30 08:39:42 +00:00 committed by Chocobozzz
parent cda03765fe
commit 0cfcbae818
7 changed files with 53 additions and 4 deletions

View File

@ -57,8 +57,8 @@ before you start working on them :).
First, you should use a server or PC with at least 4GB of RAM. Less RAM may lead to crashes.
Make sure that you have followed
[the steps](/support/doc/dependencies.md)
Make sure that you have followed
[the steps](/support/doc/dependencies.md)
to install the dependencies.
Then clone the sources and install node modules:
@ -93,6 +93,12 @@ $ sudo -u postgres psql -c "CREATE EXTENSION unaccent;" peertube_dev
In dev mode, administrator username is **root** and password is **test**.
### Online development
You can get a complete PeerTube development setup with Gitpod, a free one-click online IDE for GitHub:
[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/Chocobozzz/PeerTube)
### Server side
You can find a documentation of the server code/architecture [here](/support/doc/development/server/code.md).

16
.gitpod.yml Normal file
View File

@ -0,0 +1,16 @@
image:
file: support/docker/gitpod/Dockerfile
ports:
- port: 3000
onOpen: open-preview
- port: 5432
onOpen: ignore
- port: 6379
onOpen: ignore
- port: 9000
onOpen: ignore
tasks:
- command: redis-server
- before: export NODE_CONFIG="{\"import\":{\"videos\":{\"torrent\":{\"enabled\":false}}},\"webserver\":{\"hostname\":\"$(gp url 3000 | cut -d/ -f3)\",\"port\":\"443\",\"https\":true}}"
init: yarn install --pure-lockfile
command: npm run dev

10
client/proxy.config.json Normal file
View File

@ -0,0 +1,10 @@
{
"/api": {
"target": "http://localhost:9000",
"secure": false
},
"/static": {
"target": "http://localhost:9000",
"secure": false
}
}

View File

@ -1,5 +1,5 @@
export const environment = {
production: false,
hmr: true,
apiUrl: 'http://localhost:9000'
apiUrl: ''
}

View File

@ -4,4 +4,4 @@ set -eu
cd client
npm run ng -- serve --hmr --configuration hmr --host 0.0.0.0 --disable-host-check --port 3000
npm run ng -- serve --proxy-config proxy.config.json --hmr --configuration hmr --host 0.0.0.0 --disable-host-check --port 3000

View File

@ -0,0 +1,11 @@
FROM gitpod/workspace-postgres
# Install PeerTube's dependencies.
RUN sudo apt-get update -q && sudo apt-get install -qy \
ffmpeg \
openssl \
redis-server
# Set up PostgreSQL.
COPY --chown=gitpod:gitpod setup_postgres.sql /tmp/
RUN pg_start && psql -h localhost -d postgres --file=/tmp/setup_postgres.sql

View File

@ -0,0 +1,6 @@
create database peertube_dev;
create user peertube password 'peertube';
grant all privileges on database peertube_dev to peertube;
\c peertube_dev
CREATE EXTENSION pg_trgm;
CREATE EXTENSION unaccent;