PageRenderTime 56ms CodeModel.GetById 28ms RepoModel.GetById 0ms app.codeStats 0ms

/README.md

https://bitbucket.org/brianfisher/chef_drupal_lamp
Markdown | 114 lines | 79 code | 35 blank | 0 comment | 0 complexity | 70480837d8c232cd602b29212e247ce7 MD5 | raw file
Possible License(s): AGPL-3.0
  1. 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.
  2. ## Features
  3. - [Mailcatcher](http://mailcatcher.me/)
  4. - [Webgrind](https://github.com/jokkedk/webgrind)
  5. - [phpMyAdmin](http://www.phpmyadmin.net/)
  6. - [Xdebug](http://xdebug.org/) configured for remote debugging and profiling.
  7. - [Drush](http://drupal.org/project/drush)
  8. - [Percona Toolkit](http://www.percona.com/software/percona-toolkit)
  9. - NFS mount of user directory
  10. - [XHProf](http://drupal.org/project/XHProf)
  11. - [APC](http://php.net/manual/en/book.apc.php)
  12. - [Compass](http://compass-style.org/)
  13. - [Susy](http://susy.oddbird.net/)
  14. ## Requirements
  15. ### Cookbooks:
  16. - [apt](https://github.com/opscode-cookbooks/apt)
  17. - [apache2](https://github.com/opscode-cookbooks/apache2)
  18. - [mysql](https://github.com/opscode-cookbooks/mysql)
  19. - [php](https://github.com/opscode-cookbooks/php)
  20. - [openssl](https://github.com/opscode-cookbooks/openssl)
  21. ### Platforms:
  22. The following platforms and versions are tested and supported.
  23. - Ubuntu 12.04
  24. ## Attributes
  25. - `node['drupal_lamp']['host_ip']` - host IP
  26. - `node['drupal_lamp']['nfs_host']` - NFS spec for host IP, e.g.
  27. '192.168.34.1/16'
  28. - `node['drupal_lamp']['user']` - username to create, will create mount point
  29. on this user's home directory
  30. - `node['drupal_lamp']['drush']['version']` -
  31. [Drush](http://drupal.org/project/drush) version
  32. - `node['drupal_lamp']['php']['directives']` - Hash of directives and values
  33. to append to apache *php.ini*. See
  34. [php cookbook](https://github.com/opscode-cookbooks/php) readme.
  35. - `node['drupal_lamp']['git']['config']['user']['name']` - git user name
  36. - `node['drupal_lamp']['git']['config']['user']['email']` - git user email
  37. - `node['drupal_lamp']['apc']['directives']` - hash of [APC runtime
  38. configuration settings](http://www.php.net/manual/en/apc.configuration.php),
  39. keyed on setting name without `apc.`. The key `shm_size` (for
  40. `apc.shm_size`) is required or APC will not be installed.
  41. - `node['drupal_lamp']['memcached']` - enable memcached and php5-memcache
  42. - `node['drupal_lamp']['memcached']['conf']['m']` - memory allotment
  43. ## Usage
  44. ### Mailcatcher
  45. http://example.dev:1080/
  46. ### Webgrind
  47. http://example.dev/webgrind/
  48. ### phpMyAdmin
  49. http://example.dev/phpmyadmin/ - user "root"
  50. ### Xdebug
  51. See [Xdebug: Documentation](http://xdebug.org/docs)
  52. ### Drush
  53. Run `drush` for inline help.
  54. ### Logs
  55. - PHP log at */var/log/php/error_log*
  56. - Drupal syslog at */var/log/drupal/drupal0.log*
  57. - You can configure the syslog module "Syslog facility" and it will write
  58. to a file of the same name.
  59. ### Percona Toolkit
  60. See [Percona Toolkit Documentation](http://www.percona.com/doc/percona-toolkit/)
  61. ### NFS mount of user directory
  62. Given `node['drupal_lamp']['user']` is *myuser* and an IP *xxx.xxx.xxx.xxx*
  63. mkdir -p nfs-mount
  64. sudo mount -o -P xxx.xxx.xxx.xxx:/home/myuser/ nfs-mount
  65. ### XHProf
  66. Add to your apache virtualhost conf
  67. Alias /xhprof_html /usr/share/php5-xhprof/xhprof_html/
  68. <Directory "/usr/share/php5-xhprof/xhprof_html/">
  69. Options FollowSymLinks
  70. AllowOverride All
  71. Order allow,deny
  72. Allow from all
  73. </Directory>
  74. Configure Drupal devel to generate xhprof output
  75. - enable
  76. - xhprof directory: /usr/share/php
  77. - XHProf URL: /xhprof_html
  78. ### APC
  79. http://example.dev/apc.php