Symfony2 + GitFlow + Capifony + Capistrano-ext

I am currently developing a website using Symfony2 and Gitflow. I have 2 external servers called "development", "staging" and "production" and a central GIT repository on Github.

I want to use Capifony for:

  • deploy the changes to the "develop" branch on the development server.
  • deploy any releases / patches, etc. for testing
  • Deploy the "master" branch on the "production" server

I read this page about multi-stage deployment and installed capifony with the capistrano extension so far.

In my /app/config/deploy.rb file, I have the following:

set :stage_dir, 'app/config/deploy' # needed for Symfony2 only
require 'capistrano/ext/multistage'
set :stages, %w(production staging development)

set :application, "MyApp"

set :repository,  "git@github.com:MyCompany/#{application}.git"
set :scm,         :git

set  :keep_releases,  3

      

Then I got a separate file /app/config/development.rb with the following:

server 'SERVER_IP - PORT NUMBER', :app, :web, :primary => true
set :deploy_to, "/var/www/MyApp/" #directory on server
set :symfony_env_prod, "test"

      

However, if I run shell deployment, I get the error

the task `development' does not exist

      

Can someone please explain what "task" means?

thank

+3


source to share


1 answer


Move require 'capistrano/ext/multistage'

to the very last line, deploy.rb

or at least move set :stages, %w(production staging development)

before.



+1


source







All Articles