/README.md
Markdown | 114 lines | 79 code | 35 blank | 0 comment | 0 complexity | 70480837d8c232cd602b29212e247ce7 MD5 | raw file
Possible License(s): AGPL-3.0
- An up-to-date, generic LAMP stack with [APC](http://pecl.php.net/package/APC) and [Memcached](http://memcached.org/) for [Drupal](http://drupal.org/) development.
- ## Features
- - [Mailcatcher](http://mailcatcher.me/)
- - [Webgrind](https://github.com/jokkedk/webgrind)
- - [phpMyAdmin](http://www.phpmyadmin.net/)
- - [Xdebug](http://xdebug.org/) configured for remote debugging and profiling.
- - [Drush](http://drupal.org/project/drush)
- - [Percona Toolkit](http://www.percona.com/software/percona-toolkit)
- - NFS mount of user directory
- - [XHProf](http://drupal.org/project/XHProf)
- - [APC](http://php.net/manual/en/book.apc.php)
- - [Compass](http://compass-style.org/)
- - [Susy](http://susy.oddbird.net/)
- ## Requirements
- ### Cookbooks:
- - [apt](https://github.com/opscode-cookbooks/apt)
- - [apache2](https://github.com/opscode-cookbooks/apache2)
- - [mysql](https://github.com/opscode-cookbooks/mysql)
- - [php](https://github.com/opscode-cookbooks/php)
- - [openssl](https://github.com/opscode-cookbooks/openssl)
- ### Platforms:
- The following platforms and versions are tested and supported.
- - Ubuntu 12.04
- ## Attributes
- - `node['drupal_lamp']['host_ip']` - host IP
- - `node['drupal_lamp']['nfs_host']` - NFS spec for host IP, e.g.
- '192.168.34.1/16'
- - `node['drupal_lamp']['user']` - username to create, will create mount point
- on this user's home directory
- - `node['drupal_lamp']['drush']['version']` -
- [Drush](http://drupal.org/project/drush) version
- - `node['drupal_lamp']['php']['directives']` - Hash of directives and values
- to append to apache *php.ini*. See
- [php cookbook](https://github.com/opscode-cookbooks/php) readme.
- - `node['drupal_lamp']['git']['config']['user']['name']` - git user name
- - `node['drupal_lamp']['git']['config']['user']['email']` - git user email
- - `node['drupal_lamp']['apc']['directives']` - hash of [APC runtime
- configuration settings](http://www.php.net/manual/en/apc.configuration.php),
- keyed on setting name without `apc.`. The key `shm_size` (for
- `apc.shm_size`) is required or APC will not be installed.
- - `node['drupal_lamp']['memcached']` - enable memcached and php5-memcache
- - `node['drupal_lamp']['memcached']['conf']['m']` - memory allotment
- ## Usage
- ### Mailcatcher
- http://example.dev:1080/
- ### Webgrind
- http://example.dev/webgrind/
- ### phpMyAdmin
- http://example.dev/phpmyadmin/ - user "root"
- ### Xdebug
- See [Xdebug: Documentation](http://xdebug.org/docs)
- ### Drush
- Run `drush` for inline help.
- ### Logs
- - PHP log at */var/log/php/error_log*
- - Drupal syslog at */var/log/drupal/drupal0.log*
- - You can configure the syslog module "Syslog facility" and it will write
- to a file of the same name.
- ### Percona Toolkit
- See [Percona Toolkit Documentation](http://www.percona.com/doc/percona-toolkit/)
- ### NFS mount of user directory
- Given `node['drupal_lamp']['user']` is *myuser* and an IP *xxx.xxx.xxx.xxx*
- mkdir -p nfs-mount
- sudo mount -o -P xxx.xxx.xxx.xxx:/home/myuser/ nfs-mount
- ### XHProf
- Add to your apache virtualhost conf
- Alias /xhprof_html /usr/share/php5-xhprof/xhprof_html/
- <Directory "/usr/share/php5-xhprof/xhprof_html/">
- Options FollowSymLinks
- AllowOverride All
- Order allow,deny
- Allow from all
- </Directory>
- Configure Drupal devel to generate xhprof output
- - enable
- - xhprof directory: /usr/share/php
- - XHProf URL: /xhprof_html
- ### APC
- http://example.dev/apc.php