
Dkdeploy::Php
Description
This Rubygem dkdeploy-php ruby gem represents the extension of Capistrano tasks directed to the advanced deployment process.
Installation
Add this line to your application's Gemfile
gem 'dkdeploy-php', '~> 8.0'
and then execute
bundle install
or install it yourself as
gem install dkdeploy-php
Usage
Run in your project root
cap install STAGES='dev,integration,testing,production'
This command will create the following Capistrano file structure with all the standard pre-configured constants.
Please be aware of the difference to the native installation of Capistrano.
Certainly you have to adjust config/deploy.rb and respective stages and customize them for your needs.
As next you have to append the following line to the Capfile in order to make use of dkdeploy extensions in addition to the standard Capistrano tasks:
require 'capistrano/dkdeploy/php'
To convince yourself, that Capistrano tasks list has been extended, please run
cap -T
Please note, that dkdeploy uses the local copy strategy and overwrites the :scm constant. If you want to use it,
you should do nothing more. However if you want to change it for example to :git, please add the following line to deploy.rb
set :scm, :git
For more information about available Capistrano constants please use the Capistrano documentation.
The complete list of the dkdeploy-php constants you find in /lib/capistrano/dkdeploy/php.rb.
Testing
Prerequisite
Vagrant landrush plugin is needed. If there are issues, make sure that the following IPv4 address is used for this domain
192.168.156.181 dkdeploy-php.dev
Running tests
- Starting the local box (
vagrant up --provision) - Checking coding styles (
rubocop) - Running BDD cucumber tests (
cucumber)
Contributing
- Install git flow
- If project is not checked out already do git clone
[email protected]:dkdeploy/dkdeploy-php.git - Checkout origin develop branch (
git checkout --track -b develop origin/develop) - Git flow initialze
git flow init -d - Installing gems
bundle install - Create new feature branch (
git flow feature start my-new-feature) - Run tests (README.md Testing)
- Commit your changes (
git commit -am 'Add some feature')