Getting started with Drush
 Downloading, installing and extending
                     Drupal with Drush
By Kevin Basarab
Mediacurrent Sr. Drupal Developer
                      @kbasarab
What is Drush used for?
■   Making Sandwiches
■   Downloading Drupal
■   Installing Drupal
■   Downloading/Installing Modules
■   Clearing Cache
■   Generating/Using .make files
■   Aliases/Sync sites
■   Backup
■   Update
Making Sandwiches



   g sandwiches




                    Source: http://drupal.org
Making Sandwiches




                    Source: http://drupal.org
Download Drupal

Downloading Drupal
drush dl drupal

cp -r drupal-7.14/* ./

rm -r drupal-7.14

Installing Drupal
drush si --db-url=mysql://root:@localhost/drush_demo --
account-pass=test --site-name=Drush Demo




                                              Source: http://drupal.org
Download Drupal

■ Downloading Drupal
drush dl drupal

cp -r drupal-7.14/* ./

rm -r drupal-7.14

■ Installing Drupal
drush si --db-url=mysql://root:@localhost/drush_demo --
account-pass=test --site-name=Drush Demo



                                              Source: http://drupal.org
Install Drupal

■ Downloading Drupal
drush dl drupal
  ● Options
cp -r drupal-7.14/* ./
     ○ --site-mail
rm -r○ drupal-7.14
         --db-prefix
     ○ --db-su
     ○ --db-su-pw
■ Installing Drupal
drush si --db-url=mysql://root:@localhost/drush_demo --
account-pass=test --site-name=Drush Demo



                                              Source: http://drupal.org
Download Modules

■ Downloading Drupal
drush dl drupal
  ● Options
cp -r drupal-7.14/* ./
     ○ --site-mail
rm -r○ drupal-7.14
         --db-prefix
     ○ --db-su
     ○ --db-su-pw
■ Installing Drupal
drush si --db-url=mysql://root:@localhost/drush_demo --
account-pass=test --site-name=Drush Demo



                                              Source: http://drupal.org
Enable Modules

■ Downloading Drupal
drush dl drupal
  ● Options
cp -r drupal-7.14/* ./
     ○ --site-mail
rm -r○ drupal-7.14
         --db-prefix
     ○ --db-su
     ○ --db-su-pw
■ Installing Drupal
drush si --db-url=mysql://root:@localhost/drush_demo --
account-pass=test --site-name=Drush Demo



                                              Source: http://drupal.org
Clear Caches




               Source: http://drupal.org
.make files




 ●   Useful when installing same modules on multiple sites
 ●   Downloads and installs code, does not setup database
 ●   Can create from existing site using generate-makefile or build yourself



                                                               Source: http://drupal.org
.make files
.make files




 ●   Manifest of projects




                            Source: http://drupal.org
Alias Files




 ●   Manifest of projects




                            Source: http://drupal.org
Alias Files Usage



 ●   Sync production, staging or dev database down to local quickly.
 ●   Push full database changes to production, staging or dev.




                                                             Source: http://drupal.org
Alias Files Usage



 ●   Full example: http://drupal.org/node/1401522




                                                    Source: http://drupal.org
Archive Backup
MySQL Dump



 ●   Full example: http://drupal.org/node/1401522




                                                    Source: http://drupal.org
Update Code
Update DB



 ●   Full example: http://drupal.org/node/1401522




                                                    Source: http://drupal.org
Bonus Round




 ●   drush sqlc (MySQL CLI)
 ●   drush vset/drush vget (Variable set/get)
 ●   drush fu, drush fr, drush fra (Features)
Questions?

Speed up Drupal development with Drush

  • 1.
    Getting started withDrush Downloading, installing and extending Drupal with Drush
  • 2.
    By Kevin Basarab MediacurrentSr. Drupal Developer @kbasarab
  • 3.
    What is Drushused for? ■ Making Sandwiches ■ Downloading Drupal ■ Installing Drupal ■ Downloading/Installing Modules ■ Clearing Cache ■ Generating/Using .make files ■ Aliases/Sync sites ■ Backup ■ Update
  • 4.
    Making Sandwiches g sandwiches Source: http://drupal.org
  • 5.
    Making Sandwiches Source: http://drupal.org
  • 6.
    Download Drupal Downloading Drupal drushdl drupal cp -r drupal-7.14/* ./ rm -r drupal-7.14 Installing Drupal drush si --db-url=mysql://root:@localhost/drush_demo -- account-pass=test --site-name=Drush Demo Source: http://drupal.org
  • 7.
    Download Drupal ■ DownloadingDrupal drush dl drupal cp -r drupal-7.14/* ./ rm -r drupal-7.14 ■ Installing Drupal drush si --db-url=mysql://root:@localhost/drush_demo -- account-pass=test --site-name=Drush Demo Source: http://drupal.org
  • 8.
    Install Drupal ■ DownloadingDrupal drush dl drupal ● Options cp -r drupal-7.14/* ./ ○ --site-mail rm -r○ drupal-7.14 --db-prefix ○ --db-su ○ --db-su-pw ■ Installing Drupal drush si --db-url=mysql://root:@localhost/drush_demo -- account-pass=test --site-name=Drush Demo Source: http://drupal.org
  • 9.
    Download Modules ■ DownloadingDrupal drush dl drupal ● Options cp -r drupal-7.14/* ./ ○ --site-mail rm -r○ drupal-7.14 --db-prefix ○ --db-su ○ --db-su-pw ■ Installing Drupal drush si --db-url=mysql://root:@localhost/drush_demo -- account-pass=test --site-name=Drush Demo Source: http://drupal.org
  • 10.
    Enable Modules ■ DownloadingDrupal drush dl drupal ● Options cp -r drupal-7.14/* ./ ○ --site-mail rm -r○ drupal-7.14 --db-prefix ○ --db-su ○ --db-su-pw ■ Installing Drupal drush si --db-url=mysql://root:@localhost/drush_demo -- account-pass=test --site-name=Drush Demo Source: http://drupal.org
  • 11.
    Clear Caches Source: http://drupal.org
  • 12.
    .make files ● Useful when installing same modules on multiple sites ● Downloads and installs code, does not setup database ● Can create from existing site using generate-makefile or build yourself Source: http://drupal.org
  • 13.
  • 14.
    .make files ● Manifest of projects Source: http://drupal.org
  • 15.
    Alias Files ● Manifest of projects Source: http://drupal.org
  • 16.
    Alias Files Usage ● Sync production, staging or dev database down to local quickly. ● Push full database changes to production, staging or dev. Source: http://drupal.org
  • 17.
    Alias Files Usage ● Full example: http://drupal.org/node/1401522 Source: http://drupal.org
  • 18.
  • 19.
    MySQL Dump ● Full example: http://drupal.org/node/1401522 Source: http://drupal.org
  • 20.
  • 21.
    Update DB ● Full example: http://drupal.org/node/1401522 Source: http://drupal.org
  • 22.
    Bonus Round ● drush sqlc (MySQL CLI) ● drush vset/drush vget (Variable set/get) ● drush fu, drush fr, drush fra (Features)
  • 23.