DEPLOY
SYMFONY WITH CAPISTRANO
СПОСОБЫ DEPLOY


FTP

SVN checkout/update через SSH

Скрипты на основе rsync и SSH

Специализированные решения
CAPISTRANO


Обновление кода

Откат версий

Применение миграций

Автоматизация операций
КОМАНДА CAP


Работает из командной строки

Опции: cap -h (cap --help)

Задачи с описанием: cap -T (cap --tasks)
СХЕМА СЕРВЕРОВ


 SVN          WEB


                    APP



LOCAL          DB
СТРУКТУРА ДИРЕКТОРИЙ
[deploy_to]
[deploy_to]/releases
[deploy_to]/releases/20080819001122
[deploy_to]/releases/...
[deploy...
РОЛИ СЕРВЕРОВ

Когда много серверов
role :app, "example.com"
role :web, "example.com"
role :db, "example.com", :primary =>...
CAPIFY SYMFONY
Создание конфигурационных файлов
capify .


Главный файл Capistrano
Capfile


Конфигурация deploy
config/de...
SUBVERSION
set :application, 'sfcap-example'


set :scm, :subversion
set :repository,  'https://sfcap-example.googlecode.c...
CUSTOMIZE
after 'deploy:update', 'deploy:customize'


namespace :deploy do
  task :customize do
    php = fetch(:php, 'php...
DEPLOY!


cap deploy:setup

cap deploy

cap deploy:migrate
ДРУГИЕ ЗАДАЧИ


cap deploy:pending

cap deploy:rollback

cap deploy:cleanup
Upcoming SlideShare
Loading in …5
×

Deploy Symfony With Capistrano

3,003 views
2,883 views

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,003
On SlideShare
0
From Embeds
0
Number of Embeds
26
Actions
Shares
0
Downloads
11
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • Deploy Symfony With Capistrano

    1. 1. DEPLOY SYMFONY WITH CAPISTRANO
    2. 2. СПОСОБЫ DEPLOY FTP SVN checkout/update через SSH Скрипты на основе rsync и SSH Специализированные решения
    3. 3. CAPISTRANO Обновление кода Откат версий Применение миграций Автоматизация операций
    4. 4. КОМАНДА CAP Работает из командной строки Опции: cap -h (cap --help) Задачи с описанием: cap -T (cap --tasks)
    5. 5. СХЕМА СЕРВЕРОВ SVN WEB APP LOCAL DB
    6. 6. СТРУКТУРА ДИРЕКТОРИЙ [deploy_to] [deploy_to]/releases [deploy_to]/releases/20080819001122 [deploy_to]/releases/... [deploy_to]/shared [deploy_to]/current -> [deploy_to]/releases/20080819001122 Директория на сервере set :deploy_to, "/var/www"
    7. 7. РОЛИ СЕРВЕРОВ Когда много серверов role :app, "example.com" role :web, "example.com" role :db, "example.com", :primary => true Если сервер всего один server "example.com", :app, :web, :db, :primary => true
    8. 8. CAPIFY SYMFONY Создание конфигурационных файлов capify . Главный файл Capistrano Capfile Конфигурация deploy config/deploy.rb http://code.google.com/p/sfcap-example/
    9. 9. SUBVERSION set :application, 'sfcap-example' set :scm, :subversion set :repository,  'https://sfcap-example.googlecode.com/ svn/trunk/' set :scm_prefer_prompt, true set :scm_auth_cache, false
    10. 10. CUSTOMIZE after 'deploy:update', 'deploy:customize' namespace :deploy do   task :customize do     php = fetch(:php, 'php')     run "find #{current_path}/web -depth -wholename '*/.svn*' -delete"     run <<-CMD       ln -nfs #{shared_path}/databases.yml #{current_path}/config/databases.yml &&       ln -nfs #{shared_path}/symfony.php #{current_path}/config/symfony.php     CMD     run <<-CMD       cd #{current_path} &&       #{php} symfony plugin:publish-assets &&       #{php} symfony project:permissions     CMD   end end
    11. 11. DEPLOY! cap deploy:setup cap deploy cap deploy:migrate
    12. 12. ДРУГИЕ ЗАДАЧИ cap deploy:pending cap deploy:rollback cap deploy:cleanup

    ×