Drumbeat/Website/Install: Difference between revisions

Jump to navigation Jump to search
no edit summary
No edit summary
No edit summary
Line 4: Line 4:


(Debian/Ubuntu package names in brackets)
(Debian/Ubuntu package names in brackets)
====Compulsory====


* PHP 5.2 (php5)
* PHP 5.2 (php5)
Line 50: Line 48:
This includes our own copies of Drupal, various Drupal modules, and CiviCRM. Run this command:
This includes our own copies of Drupal, various Drupal modules, and CiviCRM. Run this command:


  svn co http://svn.mozilla.org/projects/crm/trunk /var/www/drumbeat.org
  svn co http://svn.mozilla.org/projects/crm/trunk [drumbeat local directory]
or
or
  svn co https://svn.mozilla.org/projects/crm/trunk /var/www/drumbeat.org
  svn co https://svn.mozilla.org/projects/crm/trunk [drumbeat local directory]


Or, if you have Mozilla SVN write access:
Or, if you have Mozilla SVN write access:


  svn co svn+ssh://svn.mozilla.org/projects/crm/trunk /var/www/drumbeat.org
  svn co svn+ssh://svn.mozilla.org/projects/crm/trunk [drumbeat local directory]


XXX Is this the right directory to check out into? Or do we say to put it elsewhere and use a symlink? perhaps instead of /var/www/drumbeat.org we could have [local directory] [booker] Yes, but which would be better? - Gerv  I think perhaps just [drumbeat local directory] will be best
Replace [drumbeat local directory] with the place you want to put the code - e.g. /var/www/drumbeat.org . If you don't put it in /var/www, you'll need a symlink so the webserver can see it.
as it is the simplest and should not be ambiguous [booker]


=== Install Sample Database ===
=== Install Sample Database ===
Line 65: Line 62:
* XXX - need to make this available
* XXX - need to make this available


== Additional Configuration ==
== Additional Server Configuration ==


Edit the $DRUPAL_ROOT/sites/default/settings.php:
Edit $DRUPAL_ROOT/sites/default/settings.php:


# Update both database connection strings (one is for Drupal database, the other for CiviCRM). i.e. $db_url['default'] & $db_url['mozcrm_civicrm'].  
# Update both database connection strings (one is for Drupal database, the other for CiviCRM). i.e. $db_url['default'] & $db_url['mozcrm_civicrm'].  
# Memcached settings should be verified. i.e. check the correct memcached port is specified.  
# Memcached settings should be verified. i.e. check the correct memcached port is specified.  
# Domain module include path must be updated to the full path right at the bottom of the file too.
# Domain module include path must be updated to the full path right at the bottom of the file.
# Make it read only after modifications.
# Make it read only.


Edit the $DRUPAL_ROOT/sites/default/civicrm.settings.php:
Edit $DRUPAL_ROOT/sites/default/civicrm.settings.php:


# Update the database connection string for the Drupal database CIVICRM_UF_DSN.  
# Update the database connection string for the Drupal database CIVICRM_UF_DSN.  
Line 80: Line 77:
# Update the CiviCRM root path $civicrm_root.
# Update the CiviCRM root path $civicrm_root.
# Update the CiviCRM template folder CIVICRM_TEMPLATE_COMPILEDIR.
# Update the CiviCRM template folder CIVICRM_TEMPLATE_COMPILEDIR.
# Make it read only after modifications.
# Make it read only.


Make sure the full paths are correct in $DRUPAL_ROOT/sites/default/files/upload/Config.IDS.ini and that it's read only by apache and nothing else.
Edit $DRUPAL_ROOT/sites/default/files/upload/Config.IDS.ini:
 
# Make sure the full paths are correct
# Make it read-only, and readable by apache only.


Verify that the following files & folders exist and are apache user writeable and other users readable:
Verify that the following files & folders exist and are apache user writeable and other users readable:
Line 91: Line 91:
(More to come...)
(More to come...)


=== Drupal cronjob ===
== View Site ==
 
From here on, replace $SITE with the place you have put Drumbeat on your local web server, e.g.
 
http://localhost/drumbeat.org/
 
Access
 
http://$SITE/
 
to see your installation working.
 
XXX This will depend on your /etc/host configuration. All the required steps are at http://groups.drupal.org/node/6266  [booker]
 
Access
 
http://$SITE/user/
 
If you can reach the above but not this one, mod_rewrite may not be working.
 
XXX what about SSL config?
 
== Web Configuration ==
 
Log in to the site as “admin”. (XXX password in default db?)
 
# Go to http://$SITE/admin/build/domain/settings and set the Primary domain name to the Mozillians domain name. Save.
# Go to http://$SITE/admin/build/domain/edit/2 and set the DOMAIN name to $SITE. Save. When using the drumbeat domain name, the site should now appear in the drumbeat theme.
# Next flush the cache - click “Flush all caches” on the Drupal icon menu (should be http://$SITE/admin_menu/flush-cache). (XXX isn't this broken?)
 
Now CiviCRM configuration which can be tricky, because it stores more path related settings in the database from the UI, which breaks links in the CiviCRM configuration screens.
 
# Check http://$SITE/civicrm/admin/setting/path?reset=1 full paths are correct.
# Check http://$SITE/civicrm/admin/setting/url?reset=1 paths are correct. Use the Drumbeat domain.
# Setup donation Payment Processors admin/paymentProcessor?reset=1 XXXNot for testing, I presume?
 
Google Maps API key - for geolocating users. Add it at http://$SITE/admin/settings/gmap
 
Flickr API key - for Flickr widget. Add it at http://$SITE/admin/settings/flickr


Add the following line to /etc/crontab (XXX or is there a better way in modern OSes?) sudo crontab -e ,  the cron.php file will also need to be unreachable from over the web [booker]
Enable the “Simple Mail” module to provide mail functionality


10 * * * * wget -q -O /dev/null http://{drumbeat_site_url}/cron.php
# http://$SITE/admin/build/modules. Save right at the bottom.
# http://$SITE/admin/settings/site-information and ensure site email is correct.


=== boost module ===
Setup timezone at http://$SITE/admin/settings/date-time


Boost module maintains a page cache here, which dramatically improves performance for anonymous users.
Drumbeat specific settings are configurable at http://$SITE/admin/settings/drumbeat
Modify the "cache" folder in the Drupal root apache writeable, other readable.
Copy the settings generated at http://{drumbeat_staging_url}/admin/settings/performance/boost-rules into {Drupal root}/.htaccess over the existing #Boost rules section.


=== Drupal file upload folder ===
Finally check the status reports http://$SITE/admin/reports/status . You can safely ignore the SWFObject message.


Set permissions on the $DRUPAL_ROOT/sites/default/files directory (replace $DRUPAL_ROOT and $USER with appropriate values):
=== Drupal cronjob ===


cd $DRUPAL_ROOT/sites/default/
Add the following line to /etc/crontab
sudo chown -R $USER:www-data files
sudo chmod -R g+w files


=== Web UI settings ===
Run:


XXX Does everyone need these for local testing, or can they do without? these keys will need to be removed in the sanitized version of the database - if i recall correctly you have to create some localhost keys for flickr [booker]
sudo crontab -e


* GMap api key - for geo locating. Configure @ admin/settings/gmap
and add:
* Flickr API key - for flickr widget. Configure @ admin/settings/flickr  as project maintainer for thie flickr module ,i'll go over the issue queue later this week [booker]


== View Site ==
10 * * * * wget -q -O /dev/null http://$SITE/cron.php


Access
XXX the cron.php file will also need to be unreachable from over the web [booker] - in which case, we should fix the default .htaccess so this is true - Gerv.


http://localhost/drumbeat.org/
=== Drupal file upload folder ===


to see your installation working.
Set permissions on the $DRUPAL_ROOT/sites/default/files directory (replace $DRUPAL_ROOT and $USER with appropriate values):


This will depend on your /etc/host configuration. All the required steps are at http://groups.drupal.org/node/6266 [booker]
cd $DRUPAL_ROOT/sites/default/
sudo chown -R $USER:www-data files
  sudo chmod -R g+w files


=== Troubleshooting ===
=== Troubleshooting ===
Line 137: Line 173:


== Optional Pieces ==
== Optional Pieces ==
=== Boost Module ===
Boost module maintains a page cache, which dramatically improves performance for anonymous users.
Modify the "cache" folder in the Drupal root apache writeable, other readable.
Copy the settings generated at http://{drumbeat_staging_url}/admin/settings/performance/boost-rules into {Drupal root}/.htaccess over the existing #Boost rules section.
See the INSTALLATION section of sites/all/modules/contrib/boost/README.txt for configuration.


=== Memcached ===
=== Memcached ===
Line 153: Line 198:
* Check that the settings in {Drupal root}/sites/default/settings.php match the above command line (the port, in particular)
* Check that the settings in {Drupal root}/sites/default/settings.php match the above command line (the port, in particular)
* Make sure local services can access port 11210 on localhost XXX how? telnet test?
* Make sure local services can access port 11210 on localhost XXX how? telnet test?
You can tell if it's working by checking the reports at
http://$SITE/admin/reports/memcache - if there are no statistics, then memcache is not correctly configured or running.


=== Apache Solr ===
=== Apache Solr ===
Account confirmers, Anti-spam team, Confirmed users, Bureaucrats and Sysops emeriti
4,925

edits

Navigation menu