Jump to content

Machine/aslo-web: Difference between revisions

From Sugar Labs
Dfarning (talk | contribs)
mNo edit summary
Dfarning (talk | contribs)
m move configureation to puppet
Line 1: Line 1:
==Set up==
==Set up==
Below is the recipe that we used to set up the php server.  Please see machine for up to date configuration details.
Below is the recipe that we used to set up the php server.  Please see puppet for up to date configuration details.
 


===Install required php modules===
===Install required php modules===
Line 17: Line 16:


  sudo -i -u activities
  sudo -i -u activities
===Checkout ASLO sources===
git clone git://git.sugarlabs.org/slo-activities/mainline.git ~
git checkout production -b production
===Fetch external dependencies===
cd ~/site/vendors/
svn co http://svn.mozilla.org/libs/product-details
svn co http://svn.mozilla.org/libs/fizzypop.mozdev fizzypop
svn co http://svn.mozilla.org/libs/phorms
svn co http://svn.mozilla.org/libs/zxtm-api




Line 50: Line 36:
  define('DEV', false);
  define('DEV', false);
  define('QUERY_CACHE', true);
  define('QUERY_CACHE', true);
Create directories
mkdir -p ~/site/app/tmp/cache/persistent
mkdir -p ~/site/app/tmp/cache/models
mkdir -p ~/site/app/tmp/cache/views
mkdir -p ~/files/temp
mkdir -p ~/files/extracted
mkdir -p ~/data


Minify css/js stuff
Minify css/js stuff
Line 70: Line 48:
  # do not use @daily to make sure that we start job after aslo-proxy
  # do not use @daily to make sure that we start job after aslo-proxy
  01 08 * * * $HOME/aslo/cron/daily
  01 08 * * * $HOME/aslo/cron/daily
===Create vhost===
vim /etc/apache2/sites-available/activities.sl.org
<pre>
<VirtualHost *:80 *:443>
        ServerName activities.sugarlabs.org
        ServerAlias activities2.sugarlabs.org # for test/install
        ServerAdmin webmaster@sugarlabs.org
        DocumentRoot /srv/activities/site/app/webroot
        LogFormat "%h %V %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\" \"%{HTTP_COOKIE}i\"" addons
        CustomLog /srv/activities/data/access addons
        CustomLog /var/log/apache2/all-access.log vhost_combined
        #CustomLog /var/log/apache2/performance.log performance
</VirtualHost>
</pre>

Revision as of 11:23, 1 March 2010

Set up

Below is the recipe that we used to set up the php server. Please see puppet for up to date configuration details.

Install required php modules

pear config-set preferred_state beta 
pear install Archive_Zip

Create user to run scripts

Make sure that all files in /srv/activities

  • has apache(web-data) user
  • activities group
  • group write access
  • umask is 002

Switch to activities user

sudo -i -u activities


Set up NFS mount points

Create directories

mkdir -p ~/files
mkdir -p ~/staging

Add the following lines to the end of `/etc/fstab'

sunjammer.sugarlabs.org:/srv/nfs/activities/files /srv/activities/files nfs rsize=8192,wsize=8192,timeo=14,intr
sunjammer.sugarlabs.org:/srv/nfs/activities/staging /srv/activities/staging nfs rsize=8192,wsize=8192,timeo=14,intr

First-time ASLO setup

Using ~/aslo/config.php as template, setup ASLO settings in file ~/site/app/config/config.php. Template file was configured for dev environment, switch it to production by setting SITE_STATE variable to production.

Setup other env defines in file ~/site/app/config/config-local.php

define('DEBUG', 0);
define('DEV', false);
define('QUERY_CACHE', true);

Minify css/js stuff

~/aslo/minify.py

Merge ASLO gettext strings

~/aslo/po-compile.sh

Crontab for activities user

@hourly $HOME/aslo/cron/hourly
# do not use @daily to make sure that we start job after aslo-proxy
01 08 * * * $HOME/aslo/cron/daily