#Basement
A composer + vagrant boilerplate for building PHP applications.
To get started with this boilerplate, fork or download this repository to a location on your development system and run the following two commands from inside the project directory:
composer installvagrant up
Once these tasks finish you will have a working PHP development environment running at http://192.168.33.10/
##Ubuntu 12.04 The vagrant & puppet configuration will create an Ubuntu 12.04 64bit server running:
- PHP 5.4
- MySQL 5.5
- Nginx
- PHP-FPM
It will then install configuration making the /app/www into the web root, and route all requests for files that do not exist into /app/www/index.php (which includes /app/main.php). Inside the VM, all these files will exist in the /vagrant/ path.
Additionally, the following PHP modules are installed:
- php5-mysqlnd
- php5-gd
- php5-sqlite
- php5-xdebug
- php5-apc
- php5-mcrypt
- php5-curl
- php5-memcache
##MySQL
MySQL is configured with one database (main) and two user accounts:
- root (password: root)
- php (password: php)
The php account only has rights to access the main database.
##PHPunit
This repo also includes a phpunit.xml file configured to include the composer autoloader and generate coverage reports for all files in /app/classes. Tests should go into the /tests/classes folder, matching the class path in /app/classes.
##Composer
Composer does not get installed within the vm, so it will need to be present on the host OS. The composer.json file is configured to load all libraries into /app/vendor, including the autoloader files.
Composer is also configured to generate a classmap of the entire contents of /app/classes.