drush deploy presentation by goruachev mikhail

Post on 09-Jul-2015

210 Views

Category:

Presentations & Public Speaking

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Check out the slides of the presentation about Drush deploy that was delivered by Lemberg`s Drupal developer Goruachev Mikhail at the DrupalCamp Kyiv 2014. Find out more about Drupal at http://blog.lemberg.co.uk/

TRANSCRIPT

Drush deploy Goruachev Mikhail

About drush-deploy● Drush deploy is a deployment framework built on Drush.

● It is heavily influenced by Capistrano.

Version control is not deployment tool

Analogs

Capistrano

Fabric

Why use Drush deploy? WHY?

KISS**keep it short and simple

REQUIREMENTS- Drush

- php 5.3

- git

Installing drush-deploycd ~/drushgit clone git@github.com:AmazeeLabs/drush_deploy.gitdrush cc drush drush

Are you ready, drupal?!

aliases.drushrc.php

What about multi server Deployments?

https://github.com/drush-ops/drush/blob/master/examples/example.aliases.drushrc.php

deploy.drushrc.php

https://github.com/drush-ops/drush/blob/master/examples/example.drushrc.php

Filesystem Structure

drush deploy-setup @web1

Filesystem StructureCurrent - Is a symlink to the latest release directory;

Releases - Is a releases directory;

Shared- (Git Cache / Configuration);

httpdocs- Webroot (symlink to current);

TASKS

Tasks● Before or after moving to new version

● On one or all servers

● Any console commands

drush deploy @web1● updates your remote cache

● initializes and updates git submodules

● creates a new release directy

● copies your current codebase to the release directory

● links the ‚current‘ directory with your new deployed code

● executes your tasks

drush deploy-rollback @web1● relinks the current directory with the previos release

● removes the faulty release

Example

local files

Remote host

Before After

Some questions?

Goruachev MikhailEmail: Goruachev42@gmail.com

top related