Kaynağa Gözat

Fix systemd daemons for mediagoblin

Bob Mottram 9 yıl önce
ebeveyn
işleme
0417500f6d
1 değiştirilmiş dosya ile 167 ekleme ve 117 silme
  1. 167
    117
      src/freedombone

+ 167
- 117
src/freedombone Dosyayı Görüntüle

@@ -9572,7 +9572,7 @@ function install_mediagoblin {
9572 9572
     fi
9573 9573
 
9574 9574
     apt-get -y install git-core python python3-dev python3-lxml python3-pil
9575
-	apt-get -y install python3-virtualenv npm nodejs-legacy automake
9575
+    apt-get -y install python3-virtualenv npm nodejs-legacy automake
9576 9576
 
9577 9577
     #apt-get -y install postgresql postgresql-client python-psycopg2
9578 9578
     #apt-get -y install python-gst-1.0 libjpeg62-turbo-dev gstreamer1.0-plugins-base python-gobject
@@ -9593,8 +9593,8 @@ function install_mediagoblin {
9593 9593
     git_clone $MEDIAGOBLIN_REPO $MEDIAGOBLIN_WORKING_DIRECTORY
9594 9594
     cd $MEDIAGOBLIN_WORKING_DIRECTORY
9595 9595
     git checkout $MEDIAGOBLIN_COMMIT -b $MEDIAGOBLIN_COMMIT
9596
-	git submodule init
9597
-	git submodule update
9596
+    git submodule init
9597
+    git submodule update
9598 9598
 
9599 9599
     if ! grep -q "Mediagoblin commit" $COMPLETION_FILE; then
9600 9600
         echo "Mediagoblin commit:$MEDIAGOBLIN_COMMIT" >> $COMPLETION_FILE
@@ -9622,10 +9622,32 @@ function install_mediagoblin {
9622 9622
         mkdir $MEDIAGOBLIN_WORKING_DIRECTORY/user_dev
9623 9623
     fi
9624 9624
     chmod 750 $MEDIAGOBLIN_WORKING_DIRECTORY/user_dev
9625
-    easy_install flup
9626
-    if [ ! "$?" = "0" ]; then
9627
-        exit 83527
9628
-    fi
9625
+    su -c "cd $MEDIAGOBLIN_WORKING_DIRECTORY && ./bin/easy_install --upgrade flup" - mediagoblin
9626
+    su -c "cd $MEDIAGOBLIN_WORKING_DIRECTORY && ./bin/easy_install --upgrade billiard" - mediagoblin
9627
+    su -c "cd $MEDIAGOBLIN_WORKING_DIRECTORY && ./bin/easy_install --upgrade Paste" - mediagoblin
9628
+    su -c "cd $MEDIAGOBLIN_WORKING_DIRECTORY && ./bin/easy_install --upgrade amqp" - mediagoblin
9629
+    su -c "cd $MEDIAGOBLIN_WORKING_DIRECTORY && ./bin/easy_install --upgrade anyjson" - mediagoblin
9630
+    su -c "cd $MEDIAGOBLIN_WORKING_DIRECTORY && ./bin/easy_install --upgrade py-bcrypt" - mediagoblin
9631
+    su -c "cd $MEDIAGOBLIN_WORKING_DIRECTORY && ./bin/easy_install --upgrade wtforms" - mediagoblin
9632
+    su -c "cd $MEDIAGOBLIN_WORKING_DIRECTORY && ./bin/easy_install --upgrade python-dateutil" - mediagoblin
9633
+    su -c "cd $MEDIAGOBLIN_WORKING_DIRECTORY && ./bin/easy_install --upgrade alembic" - mediagoblin
9634
+    su -c "cd $MEDIAGOBLIN_WORKING_DIRECTORY && ./bin/easy_install --upgrade waitress" - mediagoblin
9635
+    su -c "cd $MEDIAGOBLIN_WORKING_DIRECTORY && ./bin/easy_install --upgrade imagesize" - mediagoblin
9636
+    su -c "cd $MEDIAGOBLIN_WORKING_DIRECTORY && ./bin/easy_install --upgrade alabaster" - mediagoblin
9637
+    su -c "cd $MEDIAGOBLIN_WORKING_DIRECTORY && ./bin/easy_install --upgrade snowballstemmer" - mediagoblin
9638
+    su -c "cd $MEDIAGOBLIN_WORKING_DIRECTORY && ./bin/easy_install --upgrade docutils" - mediagoblin
9639
+    su -c "cd $MEDIAGOBLIN_WORKING_DIRECTORY && ./bin/easy_install --upgrade Pygments" - mediagoblin
9640
+    su -c "cd $MEDIAGOBLIN_WORKING_DIRECTORY && ./bin/easy_install --upgrade beautifulsoup4" - mediagoblin
9641
+    su -c "cd $MEDIAGOBLIN_WORKING_DIRECTORY && ./bin/easy_install --upgrade WebOb" - mediagoblin
9642
+    su -c "cd $MEDIAGOBLIN_WORKING_DIRECTORY && ./bin/easy_install --upgrade py" - mediagoblin
9643
+    su -c "cd $MEDIAGOBLIN_WORKING_DIRECTORY && ./bin/easy_install --upgrade execnet" - mediagoblin
9644
+
9645
+    # create some directories
9646
+    mkdir /var/log/mediagoblin
9647
+    chown -hR mediagoblin:www-data /var/log/mediagoblin
9648
+    mkdir /var/run/mediagoblin
9649
+    chown -hR mediagoblin:www-data /var/run/mediagoblin
9650
+    
9629 9651
     if [ ! -f $MEDIAGOBLIN_WORKING_DIRECTORY/mediagoblin.ini ]; then
9630 9652
         echo $'mediagoblin.ini not found'
9631 9653
         exit 737529
@@ -9638,31 +9660,59 @@ function install_mediagoblin {
9638 9660
     cp -av mediagoblin.ini mediagoblin_local.ini
9639 9661
     cp -av paste.ini paste_local.ini
9640 9662
 
9641
-    # TODO configure ini files
9642
-
9643 9663
     chown -hR mediagoblin:www-data $MEDIAGOBLIN_WORKING_DIRECTORY
9644 9664
 
9645 9665
     # init with systemd
9646
-    echo '[Unit]' > /etc/systemd/system/mediagoblin.service
9647
-    echo 'Description=Mediagoblin (Media Server)' >> /etc/systemd/system/mediagoblin.service
9648
-    echo 'After=syslog.target' >> /etc/systemd/system/mediagoblin.service
9649
-    echo 'After=network.target' >> /etc/systemd/system/mediagoblin.service
9650
-    #echo 'After=postgresql.service' >> /etc/systemd/system/mediagoblin.service
9651
-    echo '' >> /etc/systemd/system/mediagoblin.service
9652
-    echo '[Service]' >> /etc/systemd/system/mediagoblin.service
9653
-    echo 'Type=simple' >> /etc/systemd/system/mediagoblin.service
9654
-    echo 'User=mediagoblin' >> /etc/systemd/system/mediagoblin.service
9655
-    echo 'Group=mediagoblin' >> /etc/systemd/system/mediagoblin.service
9656
-    echo "WorkingDirectory=$MEDIAGOBLIN_WORKING_DIRECTORY" >> /etc/systemd/system/mediagoblin.service
9657
-    echo "ExecStart=$MEDIAGOBLIN_WORKING_DIRECTORY/lazyserver.sh --server-name=fcgi fcgi_host=127.0.0.1 fcgi_port=26543" >> /etc/systemd/system/mediagoblin.service
9658
-    echo 'Restart=always' >> /etc/systemd/system/mediagoblin.service
9659
-    echo 'Environment="USER=mediagoblin","HOME=/var/lib/mediagoblin"' >> /etc/systemd/system/mediagoblin.service
9660
-    echo '' >> /etc/systemd/system/mediagoblin.service
9661
-    echo '[Install]' >> /etc/systemd/system/mediagoblin.service
9662
-    echo 'WantedBy=multi-user.target' >> /etc/systemd/system/mediagoblin.service
9663
-    systemctl daemon-reload
9664
-    systemctl enable mediagoblin
9665
-    systemctl start mediagoblin
9666
+    echo '[Unit]' > /etc/systemd/system/mediagoblin-celeryd.service
9667
+    echo 'Description=Mediagoblin Celeryd' >> /etc/systemd/system/mediagoblin-celeryd.service
9668
+    echo 'After=syslog.target' >> /etc/systemd/system/mediagoblin-celeryd.service
9669
+    echo 'After=network.target' >> /etc/systemd/system/mediagoblin-celeryd.service
9670
+    echo '' >> /etc/systemd/system/mediagoblin-celeryd.service
9671
+    echo '[Service]' >> /etc/systemd/system/mediagoblin-celeryd.service
9672
+    echo 'User=mediagoblin' >> /etc/systemd/system/mediagoblin-celeryd.service
9673
+    echo 'Group=mediagoblin' >> /etc/systemd/system/mediagoblin-celeryd.service
9674
+    echo 'Type=simple' >> /etc/systemd/system/mediagoblin-celeryd.service
9675
+    echo "WorkingDirectory=$MEDIAGOBLIN_WORKING_DIRECTORY" >> /etc/systemd/system/mediagoblin-celeryd.service
9676
+    echo "Environment=MEDIAGOBLIN_CONFIG=$MEDIAGOBLIN_WORKING_DIRECTORY/mediagoblin_local.ini \\" >> /etc/systemd/system/mediagoblin-celeryd.service
9677
+    echo '    CELERY_CONFIG_MODULE=mediagoblin.init.celery.from_celery' >> /etc/systemd/system/mediagoblin-celeryd.service
9678
+    echo "ExecStart=$MEDIAGOBLIN_WORKING_DIRECTORY/bin/celery worker \\" >> /etc/systemd/system/mediagoblin-celeryd.service
9679
+    echo '    --logfile=/var/log/mediagoblin/celery.log \' >> /etc/systemd/system/mediagoblin-celeryd.service
9680
+    echo '    --loglevel=INFO' >> /etc/systemd/system/mediagoblin-celeryd.service
9681
+    echo 'PIDFile=/var/run/mediagoblin/mediagoblin-celeryd.pid' >> /etc/systemd/system/mediagoblin-celeryd.service
9682
+    echo '' >> /etc/systemd/system/mediagoblin-celeryd.service
9683
+    echo '[Install]' >> /etc/systemd/system/mediagoblin-celeryd.service
9684
+    echo 'WantedBy=multi-user.target' >> /etc/systemd/system/mediagoblin-celeryd.service
9685
+
9686
+    echo '[Unit]' > /etc/systemd/system/mediagoblin-paster.service
9687
+    echo 'Description=Mediagoblin' >> /etc/systemd/system/mediagoblin-paster.service
9688
+    echo 'After=syslog.target' >> /etc/systemd/system/mediagoblin-paster.service
9689
+    echo 'After=network.target' >> /etc/systemd/system/mediagoblin-paster.service
9690
+    echo '' >> /etc/systemd/system/mediagoblin-paster.service
9691
+    echo '[Service]' >> /etc/systemd/system/mediagoblin-paster.service
9692
+    echo 'Type=forking' >> /etc/systemd/system/mediagoblin-paster.service
9693
+    echo 'User=mediagoblin' >> /etc/systemd/system/mediagoblin-paster.service
9694
+    echo 'Group=mediagoblin' >> /etc/systemd/system/mediagoblin-paster.service
9695
+    echo 'Environment=CELERY_ALWAYS_EAGER=false' >> /etc/systemd/system/mediagoblin-paster.service
9696
+    echo "WorkingDirectory=$MEDIAGOBLIN_WORKING_DIRECTORY" >> /etc/systemd/system/mediagoblin-paster.service
9697
+    echo "ExecStart=$MEDIAGOBLIN_WORKING_DIRECTORY/bin/paster serve \\" >> /etc/systemd/system/mediagoblin-paster.service
9698
+    echo "    $MEDIAGOBLIN_WORKING_DIRECTORY/paste_local.ini \\" >> /etc/systemd/system/mediagoblin-paster.service
9699
+    echo '    --pid-file=/var/run/mediagoblin/mediagoblin.pid \' >> /etc/systemd/system/mediagoblin-paster.service
9700
+    echo '    --log-file=/var/log/mediagoblin/mediagoblin.log \' >> /etc/systemd/system/mediagoblin-paster.service
9701
+    echo '    --daemon \' >> /etc/systemd/system/mediagoblin-paster.service
9702
+    echo '    --server-name=fcgi fcgi_host=127.0.0.1 fcgi_port=26543' >> /etc/systemd/system/mediagoblin-paster.service
9703
+    echo "ExecStop=$MEDIAGOBLIN_WORKING_DIRECTORY/bin/paster serve \\" >> /etc/systemd/system/mediagoblin-paster.service
9704
+    echo '    --pid-file=/var/run/mediagoblin/mediagoblin.pid \' >> /etc/systemd/system/mediagoblin-paster.service
9705
+    echo "    $MEDIAGOBLIN_WORKING_DIRECTORY/paste_local.ini stop" >> /etc/systemd/system/mediagoblin-paster.service
9706
+    echo 'PIDFile=/var/run/mediagoblin/mediagoblin.pid' >> /etc/systemd/system/mediagoblin-paster.service
9707
+    echo '' >> /etc/systemd/system/mediagoblin-paster.service
9708
+    echo '[Install]' >> /etc/systemd/system/mediagoblin-paster.service
9709
+    echo 'WantedBy=multi-user.target' >> /etc/systemd/system/mediagoblin-paster.service
9710
+    esystemctl daemon-reload
9711
+    systemctl enable mediagoblin-celeryd
9712
+    systemctl enable mediagoblin-paster
9713
+    esystemctl daemon-reload
9714
+    systemctl start mediagoblin-celeryd
9715
+    systemctl start mediagoblin-paster
9666 9716
 
9667 9717
     MEDIAGOBLIN_ONION_HOSTNAME=$(add_onion_service mediagoblin 80 ${MEDIAGOBLIN_ONION_PORT})
9668 9718
     if ! grep -q "Mediagoblin onion domain" $COMPLETION_FILE; then
@@ -9674,7 +9724,7 @@ function install_mediagoblin {
9674 9724
         echo $'Problem creating onion address for mediagoblin'
9675 9725
         exit 672652
9676 9726
     fi
9677
-    
9727
+
9678 9728
     # web config
9679 9729
     MEDIAGOBLIN_VIRTUAL_HOST=/etc/nginx/sites-available/$MEDIAGOBLIN_DOMAIN_NAME
9680 9730
     nginx_http_redirect $MEDIAGOBLIN_DOMAIN_NAME
@@ -9682,92 +9732,92 @@ function install_mediagoblin {
9682 9732
         echo 'server {' >> $MEDIAGOBLIN_VIRTUAL_HOST
9683 9733
         echo '  listen 443 ssl;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9684 9734
         echo '  #################################################' >> $MEDIAGOBLIN_VIRTUAL_HOST
9685
-		echo '  # Stock useful config options, but ignore them :)' >> $MEDIAGOBLIN_VIRTUAL_HOST
9686
-		echo '  #################################################' >> $MEDIAGOBLIN_VIRTUAL_HOST
9687
-		echo '  include /etc/nginx/mime.types;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9688
-		echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9689
-		echo '  autoindex off;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9690
-		echo '  default_type  application/octet-stream;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9691
-		echo '  sendfile on;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9692
-		echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9693
-		nginx_limits $MEDIAGOBLIN_DOMAIN_NAME '20m'
9694
-		nginx_ssl $MEDIAGOBLIN_DOMAIN_NAME
9695
-		nginx_disable_sniffing $MEDIAGOBLIN_DOMAIN_NAME
9696
-		echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9697
-		echo '  # Gzip' >> $MEDIAGOBLIN_VIRTUAL_HOST
9698
-		echo '  gzip on;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9699
-		echo '  gzip_min_length 1024;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9700
-		echo '  gzip_buffers 4 32k;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9701
-		echo '  gzip_types text/plain application/x-javascript text/javascript text/xml text/css;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9702
-		echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9703
-		echo '  #####################################' >> $MEDIAGOBLIN_VIRTUAL_HOST
9704
-		echo '  # Mounting MediaGoblin stuff' >> $MEDIAGOBLIN_VIRTUAL_HOST
9705
-		echo '  # This is the section you should read' >> $MEDIAGOBLIN_VIRTUAL_HOST
9706
-		echo '  #####################################' >> $MEDIAGOBLIN_VIRTUAL_HOST
9707
-		echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9708
-		echo "  server_name $MEDIAGOBLIN_DOMAIN_NAME;" >> $MEDIAGOBLIN_VIRTUAL_HOST
9709
-		echo '  access_log /var/log/nginx/mediagoblin.log;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9710
-		echo '  error_log /var/log/nginx/mediagoblin.error.log;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9711
-		echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9712
-		echo '  # MediaGoblins stock static files: CSS, JS, etc.' >> $MEDIAGOBLIN_VIRTUAL_HOST
9713
-		echo '  location /mgoblin_static/ {' >> $MEDIAGOBLIN_VIRTUAL_HOST
9714
-		echo "    alias $MEDIAGOBLIN_WORKING_DIRECTORY/mediagoblin/static/;" >> $MEDIAGOBLIN_VIRTUAL_HOST
9715
-		echo '  }' >> $MEDIAGOBLIN_VIRTUAL_HOST
9716
-		echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9717
-		echo '  # Instance specific media:' >> $MEDIAGOBLIN_VIRTUAL_HOST
9718
-		echo '  location /mgoblin_media/ {' >> $MEDIAGOBLIN_VIRTUAL_HOST
9719
-		echo "    alias $MEDIAGOBLIN_WORKING_DIRECTORY/user_dev/media/public/;" >> $MEDIAGOBLIN_VIRTUAL_HOST
9720
-		echo '  }' >> $MEDIAGOBLIN_VIRTUAL_HOST
9721
-		echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9722
-		echo '  # Theme static files (usually symlinked in)' >> $MEDIAGOBLIN_VIRTUAL_HOST
9723
-		echo '  location /theme_static/ {' >> $MEDIAGOBLIN_VIRTUAL_HOST
9724
-		echo "    alias $MEDIAGOBLIN_WORKING_DIRECTORY/user_dev/theme_static/;" >> $MEDIAGOBLIN_VIRTUAL_HOST
9725
-		echo '  }' >> $MEDIAGOBLIN_VIRTUAL_HOST
9726
-		echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9727
-		echo '  # Plugin static files (usually symlinked in)' >> $MEDIAGOBLIN_VIRTUAL_HOST
9728
-		echo '  location /plugin_static/ {' >> $MEDIAGOBLIN_VIRTUAL_HOST
9729
-		echo "    alias $MEDIAGOBLIN_WORKING_DIRECTORY/user_dev/plugin_static/;" >> $MEDIAGOBLIN_VIRTUAL_HOST
9730
-		echo '  }' >> $MEDIAGOBLIN_VIRTUAL_HOST
9731
-		echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9732
-		echo '  # Mounting MediaGoblin itself via FastCGI.' >> $MEDIAGOBLIN_VIRTUAL_HOST
9733
-		echo '  location / {' >> $MEDIAGOBLIN_VIRTUAL_HOST
9734
-		echo '    fastcgi_pass 127.0.0.1:26543;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9735
-		echo '    include /etc/nginx/fastcgi_params;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9736
-		echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9737
-		echo '    # our understanding vs nginxs handling of script_name vs' >> $MEDIAGOBLIN_VIRTUAL_HOST
9738
-		echo '      # path_info dont match :)' >> $MEDIAGOBLIN_VIRTUAL_HOST
9739
-		echo '    fastcgi_param PATH_INFO $fastcgi_script_name;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9740
-		echo '    fastcgi_param SCRIPT_NAME "";' >> $MEDIAGOBLIN_VIRTUAL_HOST
9741
-		echo '  }' >> $MEDIAGOBLIN_VIRTUAL_HOST
9742
-		echo '}' >> $MEDIAGOBLIN_VIRTUAL_HOST
9743
-		echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9744
-	else
9745
-		echo -n '' > $MEDIAGOBLIN_VIRTUAL_HOST
9746
-	fi
9747
-
9748
-	echo 'server {' >> $MEDIAGOBLIN_VIRTUAL_HOST
9749
-	echo "  listen 127.0.0.1:${MEDIAGOBLIN_ONION_PORT} default_server;" >> $MEDIAGOBLIN_VIRTUAL_HOST
9750
-	echo '  #################################################' >> $MEDIAGOBLIN_VIRTUAL_HOST
9751
-	echo '  # Stock useful config options, but ignore them :)' >> $MEDIAGOBLIN_VIRTUAL_HOST
9752
-	echo '  #################################################' >> $MEDIAGOBLIN_VIRTUAL_HOST
9753
-	echo '  include /etc/nginx/mime.types;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9754
-	echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9755
-	echo '  autoindex off;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9756
-	echo '  default_type  application/octet-stream;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9757
-	echo '  sendfile on;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9758
-	echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9759
-	nginx_limits $MEDIAGOBLIN_DOMAIN_NAME '20m'
9760
-	nginx_disable_sniffing $MEDIAGOBLIN_DOMAIN_NAME
9761
-	echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9762
-	echo '  # Gzip' >> $MEDIAGOBLIN_VIRTUAL_HOST
9763
-	echo '  gzip on;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9764
-	echo '  gzip_min_length 1024;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9765
-	echo '  gzip_buffers 4 32k;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9766
-	echo '  gzip_types text/plain application/x-javascript text/javascript text/xml text/css;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9767
-	echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9768
-	echo '  #####################################' >> $MEDIAGOBLIN_VIRTUAL_HOST
9769
-	echo '  # Mounting MediaGoblin stuff' >> $MEDIAGOBLIN_VIRTUAL_HOST
9770
-	echo '  # This is the section you should read' >> $MEDIAGOBLIN_VIRTUAL_HOST
9735
+        echo '  # Stock useful config options, but ignore them :)' >> $MEDIAGOBLIN_VIRTUAL_HOST
9736
+        echo '  #################################################' >> $MEDIAGOBLIN_VIRTUAL_HOST
9737
+        echo '  include /etc/nginx/mime.types;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9738
+        echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9739
+        echo '  autoindex off;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9740
+        echo '  default_type  application/octet-stream;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9741
+        echo '  sendfile on;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9742
+        echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9743
+        nginx_limits $MEDIAGOBLIN_DOMAIN_NAME '20m'
9744
+        nginx_ssl $MEDIAGOBLIN_DOMAIN_NAME
9745
+        nginx_disable_sniffing $MEDIAGOBLIN_DOMAIN_NAME
9746
+        echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9747
+        echo '  # Gzip' >> $MEDIAGOBLIN_VIRTUAL_HOST
9748
+        echo '  gzip on;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9749
+        echo '  gzip_min_length 1024;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9750
+        echo '  gzip_buffers 4 32k;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9751
+        echo '  gzip_types text/plain application/x-javascript text/javascript text/xml text/css;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9752
+        echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9753
+        echo '  #####################################' >> $MEDIAGOBLIN_VIRTUAL_HOST
9754
+        echo '  # Mounting MediaGoblin stuff' >> $MEDIAGOBLIN_VIRTUAL_HOST
9755
+        echo '  # This is the section you should read' >> $MEDIAGOBLIN_VIRTUAL_HOST
9756
+        echo '  #####################################' >> $MEDIAGOBLIN_VIRTUAL_HOST
9757
+        echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9758
+        echo "  server_name $MEDIAGOBLIN_DOMAIN_NAME;" >> $MEDIAGOBLIN_VIRTUAL_HOST
9759
+        echo '  access_log /var/log/nginx/mediagoblin.log;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9760
+        echo '  error_log /var/log/nginx/mediagoblin.error.log;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9761
+        echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9762
+        echo '  # MediaGoblins stock static files: CSS, JS, etc.' >> $MEDIAGOBLIN_VIRTUAL_HOST
9763
+        echo '  location /mgoblin_static/ {' >> $MEDIAGOBLIN_VIRTUAL_HOST
9764
+        echo "    alias $MEDIAGOBLIN_WORKING_DIRECTORY/mediagoblin/static/;" >> $MEDIAGOBLIN_VIRTUAL_HOST
9765
+        echo '  }' >> $MEDIAGOBLIN_VIRTUAL_HOST
9766
+        echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9767
+        echo '  # Instance specific media:' >> $MEDIAGOBLIN_VIRTUAL_HOST
9768
+        echo '  location /mgoblin_media/ {' >> $MEDIAGOBLIN_VIRTUAL_HOST
9769
+        echo "    alias $MEDIAGOBLIN_WORKING_DIRECTORY/user_dev/media/public/;" >> $MEDIAGOBLIN_VIRTUAL_HOST
9770
+        echo '  }' >> $MEDIAGOBLIN_VIRTUAL_HOST
9771
+        echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9772
+        echo '  # Theme static files (usually symlinked in)' >> $MEDIAGOBLIN_VIRTUAL_HOST
9773
+        echo '  location /theme_static/ {' >> $MEDIAGOBLIN_VIRTUAL_HOST
9774
+        echo "    alias $MEDIAGOBLIN_WORKING_DIRECTORY/user_dev/theme_static/;" >> $MEDIAGOBLIN_VIRTUAL_HOST
9775
+        echo '  }' >> $MEDIAGOBLIN_VIRTUAL_HOST
9776
+        echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9777
+        echo '  # Plugin static files (usually symlinked in)' >> $MEDIAGOBLIN_VIRTUAL_HOST
9778
+        echo '  location /plugin_static/ {' >> $MEDIAGOBLIN_VIRTUAL_HOST
9779
+        echo "    alias $MEDIAGOBLIN_WORKING_DIRECTORY/user_dev/plugin_static/;" >> $MEDIAGOBLIN_VIRTUAL_HOST
9780
+        echo '  }' >> $MEDIAGOBLIN_VIRTUAL_HOST
9781
+        echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9782
+        echo '  # Mounting MediaGoblin itself via FastCGI.' >> $MEDIAGOBLIN_VIRTUAL_HOST
9783
+        echo '  location / {' >> $MEDIAGOBLIN_VIRTUAL_HOST
9784
+        echo '    fastcgi_pass 127.0.0.1:26543;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9785
+        echo '    include /etc/nginx/fastcgi_params;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9786
+        echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9787
+        echo '    # our understanding vs nginxs handling of script_name vs' >> $MEDIAGOBLIN_VIRTUAL_HOST
9788
+        echo '      # path_info dont match :)' >> $MEDIAGOBLIN_VIRTUAL_HOST
9789
+        echo '    fastcgi_param PATH_INFO $fastcgi_script_name;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9790
+        echo '    fastcgi_param SCRIPT_NAME "";' >> $MEDIAGOBLIN_VIRTUAL_HOST
9791
+        echo '  }' >> $MEDIAGOBLIN_VIRTUAL_HOST
9792
+        echo '}' >> $MEDIAGOBLIN_VIRTUAL_HOST
9793
+        echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9794
+    else
9795
+        echo -n '' > $MEDIAGOBLIN_VIRTUAL_HOST
9796
+    fi
9797
+
9798
+    echo 'server {' >> $MEDIAGOBLIN_VIRTUAL_HOST
9799
+    echo "  listen 127.0.0.1:${MEDIAGOBLIN_ONION_PORT} default_server;" >> $MEDIAGOBLIN_VIRTUAL_HOST
9800
+    echo '  #################################################' >> $MEDIAGOBLIN_VIRTUAL_HOST
9801
+    echo '  # Stock useful config options, but ignore them :)' >> $MEDIAGOBLIN_VIRTUAL_HOST
9802
+    echo '  #################################################' >> $MEDIAGOBLIN_VIRTUAL_HOST
9803
+    echo '  include /etc/nginx/mime.types;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9804
+    echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9805
+    echo '  autoindex off;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9806
+    echo '  default_type  application/octet-stream;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9807
+    echo '  sendfile on;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9808
+    echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9809
+    nginx_limits $MEDIAGOBLIN_DOMAIN_NAME '20m'
9810
+    nginx_disable_sniffing $MEDIAGOBLIN_DOMAIN_NAME
9811
+    echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9812
+    echo '  # Gzip' >> $MEDIAGOBLIN_VIRTUAL_HOST
9813
+    echo '  gzip on;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9814
+    echo '  gzip_min_length 1024;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9815
+    echo '  gzip_buffers 4 32k;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9816
+    echo '  gzip_types text/plain application/x-javascript text/javascript text/xml text/css;' >> $MEDIAGOBLIN_VIRTUAL_HOST
9817
+    echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9818
+    echo '  #####################################' >> $MEDIAGOBLIN_VIRTUAL_HOST
9819
+    echo '  # Mounting MediaGoblin stuff' >> $MEDIAGOBLIN_VIRTUAL_HOST
9820
+    echo '  # This is the section you should read' >> $MEDIAGOBLIN_VIRTUAL_HOST
9771 9821
     echo '  #####################################' >> $MEDIAGOBLIN_VIRTUAL_HOST
9772 9822
     echo '' >> $MEDIAGOBLIN_VIRTUAL_HOST
9773 9823
     echo "  server_name $MEDIAGOBLIN_ONION_HOSTNAME;" >> $MEDIAGOBLIN_VIRTUAL_HOST
@@ -9819,7 +9869,7 @@ function install_mediagoblin {
9819 9869
     else
9820 9870
         sed -i "s/Mediagoblin domain.*/Mediagoblin domain:$MEDIAGOBLIN_DOMAIN_NAME/g" $COMPLETION_FILE
9821 9871
     fi
9822
-    
9872
+
9823 9873
     echo 'install_mediagoblin' >> $COMPLETION_FILE
9824 9874
 }
9825 9875