|
@@ -126,7 +126,7 @@ PRIVATE_MAILING_LIST=
|
126
|
126
|
|
127
|
127
|
# Domain name for mediagoblin installation
|
128
|
128
|
MEDIAGOBLIN_DOMAIN_NAME=
|
129
|
|
-MEDIAGOBLIN_REPO="git://gitorious.org/mediagoblin/mediagoblin.git"
|
|
129
|
+MEDIAGOBLIN_REPO="https://gitorious.org/mediagoblin/mediagoblin.git"
|
130
|
130
|
MEDIAGOBLIN_ADMIN_PASSWORD=
|
131
|
131
|
|
132
|
132
|
# Domain name for microblog installation
|
|
@@ -8297,7 +8297,6 @@ function install_dlna_server {
|
8297
|
8297
|
}
|
8298
|
8298
|
|
8299
|
8299
|
function install_mediagoblin {
|
8300
|
|
- # These instructions don't work and need fixing
|
8301
|
8300
|
return
|
8302
|
8301
|
if grep -Fxq "install_mediagoblin" $COMPLETION_FILE; then
|
8303
|
8302
|
return
|
|
@@ -8308,137 +8307,123 @@ function install_mediagoblin {
|
8308
|
8307
|
if [ ! $MEDIAGOBLIN_DOMAIN_NAME ]; then
|
8309
|
8308
|
return
|
8310
|
8309
|
fi
|
8311
|
|
- apt-get -y install git-core python python-dev python-lxml python-imaging python-virtualenv
|
8312
|
|
- apt-get -y install python-gst-1.0 libjpeg8-dev sqlite3 libapache2-mod-fcgid gstreamer1.0-plugins-base gstreamer1.0-plugins-bad gstreamer1.0-plugins-good gstreamer1.0-plugins-ugly gstreamer1.0-libav python-numpy python-scipy libsndfile1-dev
|
8313
|
|
- apt-get -y install postgresql postgresql-client python-psycopg2 python-pip autotools-dev automake
|
8314
|
|
-
|
8315
|
|
- sudo -u postgres createuser -A -D mediagoblin
|
8316
|
|
- sudo -u postgres createdb -E UNICODE -O mediagoblin mediagoblin
|
8317
|
8310
|
|
8318
|
|
- adduser --system mediagoblin
|
|
8311
|
+ apt-get -y install git-core python python-dev python-lxml python-imaging python-virtualenv
|
|
8312
|
+ apt-get -y install postgresql postgresql-client python-psycopg2
|
|
8313
|
+ su -c "createuser -A -D mediagoblin" - postgres
|
|
8314
|
+ su -c "createdb -E UNICODE -O mediagoblin mediagoblin" - postgres
|
|
8315
|
+ adduser --disabled-login --gecos 'Mediagoblin' mediagoblin
|
8319
|
8316
|
|
8320
|
|
- MEDIAGOBLIN_DOMAIN_ROOT="/srv/$MEDIAGOBLIN_DOMAIN_NAME"
|
|
8317
|
+ MEDIAGOBLIN_DOMAIN_ROOT="/home/mediagoblin"
|
8321
|
8318
|
MEDIAGOBLIN_PATH="$MEDIAGOBLIN_DOMAIN_ROOT/mediagoblin"
|
8322
|
8319
|
MEDIAGOBLIN_PATH_BIN="$MEDIAGOBLIN_PATH/mediagoblin/bin"
|
8323
|
|
-
|
8324
|
|
- if [ ! -d $MEDIAGOBLIN_DOMAIN_ROOT ]; then
|
8325
|
|
- mkdir -p $MEDIAGOBLIN_DOMAIN_ROOT
|
8326
|
|
- fi
|
8327
|
|
- cd $MEDIAGOBLIN_DOMAIN_ROOT
|
|
8320
|
+ mkdir -p $MEDIAGOBLIN_DOMAIN_ROOT
|
8328
|
8321
|
chown -hR mediagoblin: $MEDIAGOBLIN_DOMAIN_ROOT
|
8329
|
8322
|
su -c "cd $MEDIAGOBLIN_DOMAIN_ROOT; git clone $MEDIAGOBLIN_REPO" - mediagoblin
|
|
8323
|
+ cd $MEDIAGOBLIN_DOMAIN_ROOT
|
|
8324
|
+ git checkout -q v0.7.1
|
8330
|
8325
|
su -c "cd $MEDIAGOBLIN_PATH; git submodule init" - mediagoblin
|
8331
|
8326
|
su -c "cd $MEDIAGOBLIN_PATH; git submodule update" - mediagoblin
|
|
8327
|
+ su -c "cd $MEDIAGOBLIN_PATH; (virtualenv --python=python2 --system-site-packages . || cd $MEDIAGOBLIN_PATH; virtualenv --python=python2 .) && ./bin/python setup.py develop" - mediagoblin
|
|
8328
|
+ su -c "cd $MEDIAGOBLIN_PATH; ./bin/easy_install flup" - mediagoblin
|
|
8329
|
+ if [ -f $MEDIAGOBLIN_PATH/lib/python2.7/no-global-site-packages.txt ]; then
|
|
8330
|
+ virtualenv deactivate
|
|
8331
|
+ rm -f $MEDIAGOBLIN_PATH/lib/python2.7/no-global-site-packages.txt
|
|
8332
|
+ su -c "cd $MEDIAGOBLIN_PATH; source bin/activate" - mediagoblin
|
|
8333
|
+ fi
|
|
8334
|
+ if [ -f $MEDIAGOBLIN_PATH/mediagoblin.example.ini ]; then
|
|
8335
|
+ # this is for versions > 0.7.1
|
|
8336
|
+ su -c "cp $MEDIAGOBLIN_PATH/mediagoblin.example.ini $MEDIAGOBLIN_PATH/mediagoblin_local.ini" - mediagoblin
|
|
8337
|
+ sed -i 's|# data_basedir.*|data_basedir = "/var/lib/mediagoblin"|g' $MEDIAGOBLIN_PATH/mediagoblin_local.ini
|
|
8338
|
+ else
|
|
8339
|
+ su -c "cp $MEDIAGOBLIN_PATH/mediagoblin.ini $MEDIAGOBLIN_PATH/mediagoblin_local.ini" - mediagoblin
|
|
8340
|
+ fi
|
|
8341
|
+ sed -i 's|# sql_engine.*|sql_engine = postgresql:///mediagoblin|g' $MEDIAGOBLIN_PATH/mediagoblin_local.ini
|
|
8342
|
+ sed -i "s/notice@mediagoblin.example.org/$MY_EMAIL_ADDRESS/g" $MEDIAGOBLIN_PATH/mediagoblin_local.ini
|
8332
|
8343
|
|
8333
|
|
- #su -c 'cd $MEDIAGOBLIN_PATH; ./experimental-bootstrap.sh' - mediagoblin
|
8334
|
|
- #su -c 'cd $MEDIAGOBLIN_PATH; ./configure' - mediagoblin
|
8335
|
|
- #su -c 'cd $MEDIAGOBLIN_PATH; make' - mediagoblin
|
|
8344
|
+ # add extra media types
|
|
8345
|
+ if grep -q "media_types.audio" $MEDIAGOBLIN_PATH/mediagoblin_local.ini; then
|
|
8346
|
+ echo '[[mediagoblin.media_types.audio]]' >> $MEDIAGOBLIN_PATH/mediagoblin_local.ini
|
|
8347
|
+ fi
|
|
8348
|
+ if grep -q "media_types.video" $MEDIAGOBLIN_PATH/mediagoblin_local.ini; then
|
|
8349
|
+ echo '[[mediagoblin.media_types.video]]' >> $MEDIAGOBLIN_PATH/mediagoblin_local.ini
|
|
8350
|
+ fi
|
|
8351
|
+ if grep -q "media_types.stl" $MEDIAGOBLIN_PATH/mediagoblin_local.ini; then
|
|
8352
|
+ echo '[[mediagoblin.media_types.stl]]' >> $MEDIAGOBLIN_PATH/mediagoblin_local.ini
|
|
8353
|
+ fi
|
8336
|
8354
|
|
8337
|
|
- su -c "cd $MEDIAGOBLIN_PATH; virtualenv --system-site-packages ." - mediagoblin
|
8338
|
|
- su -c "cd $MEDIAGOBLIN_PATH_BIN; python setup.py develop" - mediagoblin
|
|
8355
|
+ #su -c "cd $MEDIAGOBLIN_PATH; git submodule update && ./bin/python setup.py develop --upgrade && ./bin/gmg dbupdate" - mediagoblin
|
|
8356
|
+ su -c "cd $MEDIAGOBLIN_PATH; ./bin/gmg dbupdate" - mediagoblin
|
8339
|
8357
|
|
8340
|
|
- su -c "cp $MEDIAGOBLIN_PATH/mediagoblin.ini $MEDIAGOBLIN_PATH/mediagoblin_local.ini" - mediagoblin
|
8341
|
|
- su -c "cp $MEDIAGOBLIN_PATH/paste.ini $MEDIAGOBLIN_PATH/paste_local.ini" - mediagoblin
|
8342
|
|
-
|
8343
|
|
- # update the dynamic DNS
|
8344
|
|
- CURRENT_DDNS_DOMAIN=$MEDIAGOBLIN_DOMAIN_NAME
|
8345
|
|
- add_ddns_domain
|
8346
|
|
-
|
8347
|
|
- # see https://wiki.mediagoblin.org/Deployment / uwsgi with configs
|
8348
|
|
- apt-get -y install uwsgi uwsgi-plugin-python nginx-full supervisor
|
8349
|
8358
|
|
8350
|
8359
|
echo 'server {' > /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8351
|
|
- echo ' include /etc/nginx/mime.types;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8360
|
+ echo ' listen 80;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8361
|
+ echo " server_name $MEDIAGOBLIN_DOMAIN_NAME;" >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8362
|
+ echo ' access_log off;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8363
|
+ echo " error_log /var/log/nginx/$MEDIAGOBLIN_DOMAIN_NAME_error.log $WEBSERVER_LOG_LEVEL;" >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8364
|
+ echo ' limit_conn conn_limit_per_ip 10;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8365
|
+ echo ' limit_req zone=req_limit_per_ip burst=10 nodelay;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8366
|
+ echo ' location / {' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8367
|
+ echo ' proxy_pass http://localhost:6543;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8368
|
+ echo ' }' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8369
|
+ echo ' location ^~ /user/ {' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8370
|
+ echo ' rewrite ^ https://$server_name$request_uri?;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8371
|
+ echo ' }' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8372
|
+ echo ' location ^~ /admin/ {' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8373
|
+ echo ' rewrite ^ https://$server_name$request_uri?;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8374
|
+ echo ' }' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8375
|
+ echo '}' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8352
|
8376
|
echo '' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8353
|
|
- echo ' autoindex off;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8354
|
|
- echo ' default_type application/octet-stream;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8355
|
|
- echo ' sendfile on;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8377
|
+ echo 'server {' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8378
|
+ echo ' listen 443 ssl;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8379
|
+ echo " root /var/www/$MEDIAGOBLIN_DOMAIN_NAME/htdocs;" >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8380
|
+ echo " server_name $MEDIAGOBLIN_DOMAIN_NAME;" >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8381
|
+ echo ' access_log off;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8382
|
+ echo " error_log /var/log/nginx/$MEDIAGOBLIN_DOMAIN_NAME_error.log $WEBSERVER_LOG_LEVEL;" >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8356
|
8383
|
echo '' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8357
|
|
- echo ' # Gzip' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8358
|
|
- echo ' gzip on;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8359
|
|
- echo ' gzip_min_length 1024;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8360
|
|
- echo ' gzip_buffers 4 32k;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8361
|
|
- echo ' gzip_types text/plain text/html application/x-javascript text/javascript text/xml text/css;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8384
|
+ echo ' limit_conn conn_limit_per_ip 10;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8385
|
+ echo ' limit_req zone=req_limit_per_ip burst=10 nodelay;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8362
|
8386
|
echo '' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8363
|
|
- echo " server_name $MEDIAGOBLIN_DOMAIN_NAME;" >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8387
|
+ echo ' ssl on;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8388
|
+ echo " ssl_certificate /etc/ssl/certs/$MEDIAGOBLIN_DOMAIN_NAME.crt;" >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8389
|
+ echo " ssl_certificate_key /etc/ssl/private/$MEDIAGOBLIN_DOMAIN_NAME.key;" >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8390
|
+ echo " ssl_dhparam /etc/ssl/certs/$MEDIAGOBLIN_DOMAIN_NAME.dhparam;" >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8364
|
8391
|
echo '' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8365
|
|
- echo ' error_log /var/log/nginx/mg.error.log error;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8392
|
+ echo ' ssl_session_timeout 5m;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8393
|
+ echo ' ssl_prefer_server_ciphers on;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8394
|
+ echo " ssl_protocols $SSL_PROTOCOLS; # not possible to do exclusive" >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8395
|
+ echo " ssl_ciphers '$SSL_CIPHERS';" >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8396
|
+ echo ' add_header X-Frame-Options DENY;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8397
|
+ echo ' add_header X-Content-Type-Options nosniff;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8398
|
+ echo ' add_header Strict-Transport-Security max-age=0;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8366
|
8399
|
echo '' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8367
|
|
- echo ' #include global/common.conf;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8400
|
+ echo ' location / {' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8401
|
+ echo ' proxy_pass http://localhost:6543;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8402
|
+ echo ' }' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8368
|
8403
|
echo '' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8369
|
|
- echo ' client_max_body_size 100m;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8370
|
|
- echo ' add_header X-Content-Type-Options nosniff;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8404
|
+ echo ' client_max_body_size 10G; # set max upload size' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8405
|
+ echo ' client_body_buffer_size 128k;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8406
|
+ echo ' fastcgi_buffers 64 4K;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8371
|
8407
|
echo '' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8372
|
|
- echo " root $MEDIAGOBLIN_PATH/;" >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8408
|
+ echo ' error_page 403 /core/templates/403.php;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8409
|
+ echo ' error_page 404 /core/templates/404.php;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8373
|
8410
|
echo '' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8374
|
|
- echo ' location /mgoblin_static/ {' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8375
|
|
- echo " alias $MEDIAGOBLIN_PATH/static/;" >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8376
|
|
- echo ' }' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8377
|
|
- echo ' location /mgoblin_media/ {' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8378
|
|
- echo " alias $MEDIAGOBL_PATH/media/public/;" >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8379
|
|
- echo ' }' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8380
|
|
- echo ' location /theme_static/ {' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8381
|
|
- echo ' }' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8382
|
|
- echo ' location /plugin_static/ {' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8383
|
|
- echo ' }' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8384
|
|
- echo ' location / {' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8385
|
|
- echo ' uwsgi_pass unix:///tmp/mg.uwsgi.sock;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8386
|
|
- echo ' uwsgi_param SCRIPT_NAME "/";' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8387
|
|
- echo ' include uwsgi_params;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8388
|
|
- echo ' }' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8411
|
+ echo ' location = /robots.txt {' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8412
|
+ echo ' allow all;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8413
|
+ echo ' log_not_found off;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8414
|
+ echo ' access_log off;' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
|
8415
|
+ echo ' }' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8389
|
8416
|
echo '}' >> /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
|
8390
|
8417
|
|
8391
|
|
- echo 'uwsgi:' > /etc/uwsgi/apps-available/mg.yaml
|
8392
|
|
- echo ' uid: mediagoblin' >> /etc/uwsgi/apps-available/mg.yaml
|
8393
|
|
- echo ' gid: mediagoblin' >> /etc/uwsgi/apps-available/mg.yaml
|
8394
|
|
- echo ' socket: /tmp/mg.uwsgi.sock' >> /etc/uwsgi/apps-available/mg.yaml
|
8395
|
|
- echo ' chown-socket: www-data:www-data' >> /etc/uwsgi/apps-available/mg.yaml
|
8396
|
|
- echo ' plugins: python' >> /etc/uwsgi/apps-available/mg.yaml
|
8397
|
|
- echo " home: $MEDIAGOBLIN_PATH/" >> /etc/uwsgi/apps-available/mg.yaml
|
8398
|
|
- echo " chdir: $MEDIAGOBLIN_PATH/" >> /etc/uwsgi/apps-available/mg.yaml
|
8399
|
|
- echo " ini-paste: $MEDIAGOBLIN_PATH/paste_local.ini" >> /etc/uwsgi/apps-available/mg.yaml
|
8400
|
|
-
|
8401
|
|
- echo '[program:celery]' > /etc/supervisor/conf.d/mediagoblin.conf
|
8402
|
|
- echo "command=$MEDIAGOBLIN_PATH_BIN/celery worker -l debug" >> /etc/supervisor/conf.d/mediagoblin.conf
|
8403
|
|
- echo '' >> /etc/supervisor/conf.d/mediagoblin.conf
|
8404
|
|
- echo '; Set PYTHONPATH to the directory containing celeryconfig.py' >> /etc/supervisor/conf.d/mediagoblin.conf
|
8405
|
|
- echo "environment=PYTHONPATH='$MEDIAGOBLIN_PATH',MEDIAGOBLIN_CONFIG='$MEDIAGOBLIN_PATH/mediagoblin_local.ini',CELERY_CONFIG_MODULE='mediagoblin.init.celery.from_celery'" >> /etc/supervisor/conf.d/mediagoblin.conf
|
8406
|
|
- echo '' >> /etc/supervisor/conf.d/mediagoblin.conf
|
8407
|
|
- echo "directory=$MEDIAGOBLIN_PATH/" >> /etc/supervisor/conf.d/mediagoblin.conf
|
8408
|
|
- echo 'user=mediagoblin' >> /etc/supervisor/conf.d/mediagoblin.conf
|
8409
|
|
- echo 'numprocs=1' >> /etc/supervisor/conf.d/mediagoblin.conf
|
8410
|
|
- echo '; uncomment below to enable logs saving' >> /etc/supervisor/conf.d/mediagoblin.conf
|
8411
|
|
- echo ";stdout_logfile=/var/log/nginx/celeryd_stdout.log" >> /etc/supervisor/conf.d/mediagoblin.conf
|
8412
|
|
- echo ";stderr_logfile=/var/log/nginx/celeryd_stderr.log" >> /etc/supervisor/conf.d/mediagoblin.conf
|
8413
|
|
- echo 'autostart=true' >> /etc/supervisor/conf.d/mediagoblin.conf
|
8414
|
|
- echo 'autorestart=false' >> /etc/supervisor/conf.d/mediagoblin.conf
|
8415
|
|
- echo 'startsecs=10' >> /etc/supervisor/conf.d/mediagoblin.conf
|
8416
|
|
- echo '' >> /etc/supervisor/conf.d/mediagoblin.conf
|
8417
|
|
- echo '; Need to wait for currently executing tasks to finish at shutdown.' >> /etc/supervisor/conf.d/mediagoblin.conf
|
8418
|
|
- echo '; Increase this if you have very long running tasks.' >> /etc/supervisor/conf.d/mediagoblin.conf
|
8419
|
|
- echo 'stopwaitsecs = 600' >> /etc/supervisor/conf.d/mediagoblin.conf
|
8420
|
|
-
|
8421
|
|
- ln -s /etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME /etc/nginx/sites-enabled/
|
8422
|
|
- ln -s /etc/uwsgi/apps-available/mg.yaml /etc/uwsgi/apps-enabled/
|
8423
|
|
-
|
8424
|
|
- # change settings
|
8425
|
|
- sed -i "s/notice@mediagoblin.example.org/$MY_EMAIL_ADDRESS/g" $MEDIAGOBLIN_PATH/mediagoblin_local.ini
|
8426
|
|
- sed -i 's/email_debug_mode = true/email_debug_mode = false/g' $MEDIAGOBLIN_PATH/mediagoblin_local.ini
|
8427
|
|
- sed -i 's|# sql_engine = postgresql:///mediagoblin|sql_engine = postgresql:///mediagoblin|g' $MEDIAGOBLIN_PATH/mediagoblin_local.ini
|
|
8418
|
+ # update the dynamic DNS
|
|
8419
|
+ CURRENT_DDNS_DOMAIN=$MEDIAGOBLIN_DOMAIN_NAME
|
|
8420
|
+ add_ddns_domain
|
|
8421
|
+
|
|
8422
|
+
|
|
8423
|
+ # TODO...
|
|
8424
|
+
|
8428
|
8425
|
|
8429
|
|
- # add extra media types
|
8430
|
|
- if grep -q "media_types.audio" $MEDIAGOBLIN_PATH/mediagoblin_local.ini; then
|
8431
|
|
- echo '[[mediagoblin.media_types.audio]]' >> $MEDIAGOBLIN_PATH/mediagoblin_local.ini
|
8432
|
|
- fi
|
8433
|
|
- if grep -q "media_types.video" $MEDIAGOBLIN_PATH/mediagoblin_local.ini; then
|
8434
|
|
- echo '[[mediagoblin.media_types.video]]' >> $MEDIAGOBLIN_PATH/mediagoblin_local.ini
|
8435
|
|
- fi
|
8436
|
|
- if grep -q "media_types.stl" $MEDIAGOBLIN_PATH/mediagoblin_local.ini; then
|
8437
|
|
- echo '[[mediagoblin.media_types.stl]]' >> $MEDIAGOBLIN_PATH/mediagoblin_local.ini
|
8438
|
|
- fi
|
8439
|
8426
|
|
8440
|
|
- su -c "cd $MEDIAGOBLIN_PATH_BIN; pip install scikits.audiolab" - mediagoblin
|
8441
|
|
- su -c "cd $MEDIAGOBLIN_PATH_BIN; gmg dbupdate" - mediagoblin
|
8442
|
8427
|
|
8443
|
8428
|
# systemd init scripts
|
8444
|
8429
|
|