Я боролся с Capistrano, чтобы автоматизировать развертывание приложения Zend Framework в течение последних нескольких часов. Хотелось бы узнать какое-то руководство.Автоматизация развертывания приложений каркаса Zend с использованием Capistrano
Моя структура каталогов выглядит следующим образом
<project name>/
Capfile
application/
configs/
deploy/
staging.rb
application.ini
deploy.rb
controllers/
models/
.
.
.
other framework folders and files
Мои Capfile является
require 'rubygems'
require 'railsless-deploy'
require 'capistrano/ext/multistage'
load 'deploy' if respond_to?(:namespace) # cap2 differentiator
Мой deploy.rb есть (СКМ информация опущена)
set :application, "App"
set :stages, %w(staging production)
set :default_stage, "staging"
set :stages_dir, "application/configs/deploy/"
default_run_options[:pty] = true
set :deploy_via, :remote_cache
set :scm, "git"
set :ssh_options, {:forward_agent => true}
set :repository, "[email protected]:<details>"
set :branch, "staging"
И мой staging.rb внутри моя папка развертывания (учетные данные опущены)
role :app, "host name"
role :web, "host name"
role :db, "host name", :primary => true
set :deploy_to, "/httpdocs/"
set :user, "username"
set :password, "password"
Я использую VPS, но я не думаю, что я нахожусь на том этапе, где мне нужно отлаживать серверную часть. Капистрано говорит, что он не может обнаружить постановку задачи, хотя я ее определил. Ошибка
triggering load callbacks
the task `staging' does not exist
Что я делаю неправильно?
Спасибо!
Это не поможет. Я все равно получаю ту же ошибку. – Satyam
Я отредактировал свой ответ, чтобы включить другую идею –