Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Deployment
The darkest of the Drupal arts
Moving stuff
to your live site
Moving stuff
to your live site
 (And living to tell about it)
Deployment’s
Five Commandments
Thou Shalt Use
Source Control
You will always collide with “The Other Guy”
  You will always need to undo something
Thou Shalt Smack
Anyone Who Doesn’t
  It’s not really source control if Bob
      keeps changing things via FTP
Thou Shalt Use Code
 Whenever Possible
    Code lives in source control
   Code is safer than the database
Thou Shalt
Test Thy Changes
It always works just fine on your laptop
Thou Shalt
    Document
   You will always be on vacation
when the really big emergency happens
The Launch
Dev laptop

cvs.drupal.org

                 SVN server




                 Live server
What’s in SVN?

public_html


assets


db_snapshots
What’s in SVN?

public_html


assets


db_snapshots
What’s in SVN?

public_html

         sites
assets           www.mysite.com
                        files
db_snapshots
What’s in SVN?

public_html

         sites
assets           www.mysite.com
                        files
db_snapshots
The magic of symlinks
                VERSION_1


  public_html   VERSION_2
The magic of symlinks
                VERSION_1


  public_html   VERSION_2


                VERSION_3
Fixin’ Bugs,
Addin’ Features
Dev laptop




SVN server




Live server
Dev laptop




SVN server    Test server




Live server
Dev laptop




SVN server    Test server




Live server   db_snapshots
Dev laptop




SVN server    Test server




Live server   db_snapshots
Test, Test, Test
Test
Then Test
Wipe the database
 then test again
Dev laptop




SVN server    Test server




Live server   db_snapshots
Don’t hack live
Configuration
  Changes
Export your Views
Export your Views




 your_module.views_defaults.inc
   hook_views_default_views()
Use update.php!
Use update.php!
simpletest.install
http://api.drupal.org/api/function/hook_update_N
Use helper functions,
    not interns
Use helper functions,
    not interns
        CCK fields
Use helper functions,
    not interns
          CCK fields
      Imagecache presets
Use helper functions,
    not interns
          CCK fields
      Imagecache presets
      Rules configuration
Use helper functions,
    not interns
          CCK fields
      Imagecache presets
      Rules configuration
         Menu ...
Use helper functions,
    not interns
          CCK fields
      Imagecache presets
      Rules configuration
         Menu ...
Use helper functions,
    not interns
          CCK fields
      Imagecache presets
      Rules configuration
         Menu ...
Devel module
Wipe the database
   then test
Test, Test, Test
Test
Then Test
Syncing Content
e ID 259
Nod




              ALSO Node ID 259
Nodes my way
 by the Psychedelic Furs
Nodes my way, Part 2
     by the Psychedelic Furs
Nodes my way, Epilogue
          by the Psychedelic Furs




   http://drupal.org/project/export_node
Yeah, but...
Don’t syncronize
   content.
Don’t syncronize
   content.
          Feed API
   Publish and Subscribe
         Aggregator
     Import/Export...
Workflow
Moderation
   Drafts
Editor Roles
No Magic Bullets
No Magic Bullets

• Figure out your organization
No Magic Bullets

• Figure out your organization
• Find matching tools
No Magic Bullets

• Figure out your organization
• Find matching tools
• Roll your own
No Magic Bullets

• Figure out your organization
• Find matching tools
• Roll your own
• Document! Document! Document!
Tools to watch
• Drush (do Drupal stuff from the command line)
  http://drupal.org/project/drush

• Install Profile API (he...
Drupal Deployment
Drupal Deployment
Drupal Deployment
Drupal Deployment
Drupal Deployment
Upcoming SlideShare
Loading in …5
×

Drupal Deployment

74,010 views

Published on

A gentle introduction to Drupal site deployment best practices, from the Do It With Drupal conference.

Published in: Technology
  • Hi there! Get Your Professional Job-Winning Resume Here - Check our website! http://bit.ly/resumpro
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • For Drupal certification Courses visit at http://www.todaycourses.com
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • It’s a very informative presentation about Drupal deployment; however now Drupal can also be very easily installed with just 1- click installation solution using Cloudways, complete details on: https://www.cloudways.com/en/drupal-cloud-hosting.php
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • My dear, How are you today? i will like to be your friend My name is Sheikha Ghunaim , am a 43 years old divorcee. Please write to me in my email ( sheikhaghunaim2@hotmail.com ). im honest and open mind single woman. im going to tell more when i see your response. Regards Sheikha.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Disappointing..
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Drupal Deployment

  1. Deployment The darkest of the Drupal arts
  2. Moving stuff to your live site
  3. Moving stuff to your live site (And living to tell about it)
  4. Deployment’s Five Commandments
  5. Thou Shalt Use Source Control You will always collide with “The Other Guy” You will always need to undo something
  6. Thou Shalt Smack Anyone Who Doesn’t It’s not really source control if Bob keeps changing things via FTP
  7. Thou Shalt Use Code Whenever Possible Code lives in source control Code is safer than the database
  8. Thou Shalt Test Thy Changes It always works just fine on your laptop
  9. Thou Shalt Document You will always be on vacation when the really big emergency happens
  10. The Launch
  11. Dev laptop cvs.drupal.org SVN server Live server
  12. What’s in SVN? public_html assets db_snapshots
  13. What’s in SVN? public_html assets db_snapshots
  14. What’s in SVN? public_html sites assets www.mysite.com files db_snapshots
  15. What’s in SVN? public_html sites assets www.mysite.com files db_snapshots
  16. The magic of symlinks VERSION_1 public_html VERSION_2
  17. The magic of symlinks VERSION_1 public_html VERSION_2 VERSION_3
  18. Fixin’ Bugs, Addin’ Features
  19. Dev laptop SVN server Live server
  20. Dev laptop SVN server Test server Live server
  21. Dev laptop SVN server Test server Live server db_snapshots
  22. Dev laptop SVN server Test server Live server db_snapshots
  23. Test, Test, Test
  24. Test
  25. Then Test
  26. Wipe the database then test again
  27. Dev laptop SVN server Test server Live server db_snapshots
  28. Don’t hack live
  29. Configuration Changes
  30. Export your Views
  31. Export your Views your_module.views_defaults.inc hook_views_default_views()
  32. Use update.php!
  33. Use update.php!
  34. simpletest.install
  35. http://api.drupal.org/api/function/hook_update_N
  36. Use helper functions, not interns
  37. Use helper functions, not interns CCK fields
  38. Use helper functions, not interns CCK fields Imagecache presets
  39. Use helper functions, not interns CCK fields Imagecache presets Rules configuration
  40. Use helper functions, not interns CCK fields Imagecache presets Rules configuration Menu items
  41. Use helper functions, not interns CCK fields Imagecache presets Rules configuration Menu items Taxonomy terms…
  42. Use helper functions, not interns CCK fields Imagecache presets Rules configuration Menu items Taxonomy terms… Install Profile API
  43. Devel module
  44. Wipe the database then test
  45. Test, Test, Test
  46. Test
  47. Then Test
  48. Syncing Content
  49. e ID 259 Nod ALSO Node ID 259
  50. Nodes my way by the Psychedelic Furs
  51. Nodes my way, Part 2 by the Psychedelic Furs
  52. Nodes my way, Epilogue by the Psychedelic Furs http://drupal.org/project/export_node
  53. Yeah, but...
  54. Don’t syncronize content.
  55. Don’t syncronize content. Feed API Publish and Subscribe Aggregator Import/Export...
  56. Workflow Moderation Drafts Editor Roles
  57. No Magic Bullets
  58. No Magic Bullets • Figure out your organization
  59. No Magic Bullets • Figure out your organization • Find matching tools
  60. No Magic Bullets • Figure out your organization • Find matching tools • Roll your own
  61. No Magic Bullets • Figure out your organization • Find matching tools • Roll your own • Document! Document! Document!
  62. Tools to watch • Drush (do Drupal stuff from the command line) http://drupal.org/project/drush • Install Profile API (helper code for updates) http://drupal.org/project/install_profile_api • Patterns (save site configuration in XML) http://drupal.org/project/patterns • Deployment (push site changes via XMLRPC) http://drupal.org/project/deploy • Aegir (manage multiple sites from one UI) http://groups.drupal.org/aegir-hosting-system

×