Tray: Difference between revisions
→Post-installation updates: add PHPUnit installation note |
→Post-installation updates: add a comment about phpunit.xml file |
||
Line 120: | Line 120: | ||
I add the application short name as an extension to <span class="package">artisan</span> because I have multiple instances of Laravel applications and create links to corresponding <span class="package">artisan</span> executables. | I add the application short name as an extension to <span class="package">artisan</span> because I have multiple instances of Laravel applications and create links to corresponding <span class="package">artisan</span> executables. | ||
===== For unit testing ===== | |||
It's also good idea to install PHPUnit, especially if you're interested in taking the TDD approach to development. | It's also good idea to install PHPUnit, especially if you're interested in taking the TDD approach to development. | ||
Line 128: | Line 130: | ||
</span> | </span> | ||
</div> | </div> | ||
I also want the unit testing to stop on a failure. You can change <span class="package">stopOnFailure</span> attribute to <span class="package">true</span> in <span class="shell">phpunit.xml</span> file. | |||
== Configuration == | == Configuration == |
Revision as of 19:39, 26 February 2015
This is a page for taking notes for current workflow process. Intended for further processing and organization.
Laravel 5
- Tested on Ubuntu 14.04.2 LTS, Apache/2.4.9, PHP 5.5.15RC1, Laravel (5.0; installer version 1.2.0) / medium / less than 10 minutes
Installation
Prerequisite environment setup
Make sure you have PHP 5.4 or greater version installed. On a Debian-derived distribution such as Ubuntu, it's as simple as # apt-get install php5
.
Other basic requirements are mcrypt, mbstring. OpenSSL support is built-in on this version[1]. I also install JSON, xdebug, sqlite, readline, mysql, memcached, intl, and curl.
mhan@brahms:~/testing $ sudo apt-get install php5-mcrypt php5-json php5-xdebug php5-sqlite php5-readline php5-mysql php5-memcached php5-intl php5-curl
mbstring is a part of libapache2-mod-php5 package[2].
mhan@brahms:~/testing $ sudo apt-get install libapache2-mod-php5
Files and applications
Download Laravel installer using Composer.
$ composer global require "laravel/installer=~1.1"
Changed current directory to /home/mhan/.composer
./composer.json has been created
Loading composer repositories with package information
Updating dependencies (including require-dev)
- Installing symfony/process (v2.6.4)
Down Downloading: 100%
- Installing symfony/console (v2.6.4)
Down Downloading: 100%
- Installing guzzlehttp/streams (2.1.0)
Down Downloading: 100%
- Installing guzzlehttp/guzzle (4.2.3)
Down Downloading: 100%
- Installing laravel/installer (v1.2.0)
Down Downloading: 100%
symfony/console suggests installing symfony/event-dispatcher ()
symfony/console suggests installing psr/log (For using the console logger)
Writing lock file
Generating autoload files
Instead of adding ~/.composer/vendor/bin to the PATH environment variable, I simply made a symbolic link to it in ~/bin/ folder.
$ ln -s ~/.composer/vendor/bin/laravel ~/bin/laravel
Create a new Laravel application.
mhan@brahms:/srv/www/sanban
$ laravel new sanban
Crafting application...
Generating optimized class loader
Compiling common classes
Compiling views
Application key [CJwBsllwDbWLlxy7zH7zRATmSu2laUyA] set successfully.
Then I enable access to this new application via web. This is an apache config.
<VirtualHost *:80>
ServerAdmin admin@hostname.com
ServerName sanban.hostname.com
ServerSignature Off
DocumentRoot /srv/www/sanban/public
<Directory /srv/www/sanban/public>
Options -Indexes +FollowSymLinks -MultiViews
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
Make sure to restart the httpd (i.e. $ service apache2 restart
on Ubuntu).
Post-installation updates
Update app.url, app.timezone[3].
<?php
// config/app.php
..
'url' => 'http://hostname.com',
..
'timezone' => 'America/Denver',
..
I also like to add a link to artisan PHP executable into my ~/bin folder.
mhan@brahms:~/sanban $ chmod u+x artisan.sanban && ln -s /srv/www/sanban/artisan ~/bin/artisan.sanban
I add the application short name as an extension to artisan because I have multiple instances of Laravel applications and create links to corresponding artisan executables.
For unit testing
It's also good idea to install PHPUnit, especially if you're interested in taking the TDD approach to development.
mhan@brahms:~/sanban $ sudo apt-get install phpunit
I also want the unit testing to stop on a failure. You can change stopOnFailure attribute to true in phpunit.xml file.
Configuration
Name the application
I'm naming the application sanban.
mhan@brahms:~/sanban $ artisan.sanban app:name Sanban
References
- ↑ Stack Exchange. Program documentation. Stack Exchange. N.p., n.d. Web. 26 Feb. 2015. <http://askubuntu.com/questions/323005/php-openssl-extension-has-a-package>.
- ↑ Stack Exchange. Program documentation. Stack Exchange. N.p., n.d. Web. 26 Feb. 2015. <http://askubuntu.com/questions/491629/how-to-install-php-mbstring-extension-in-ubuntu>.
- ↑ 26 Feb 2015. <http://php.net/manual/en/timezones.php>.