Your SlideShare is downloading. ×
Implementing Continuous Integration Best Practices with Drupal - 2014
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Implementing Continuous Integration Best Practices with Drupal - 2014

221
views

Published on

On May 22nd 2014 I was asked to speak at a Drupalcafé (http://www.meetup.com/drupalnetherlands/events/173046492/) on the subject of Continuous Integration on Acquia. I gave a refreshed presentation of …

On May 22nd 2014 I was asked to speak at a Drupalcafé (http://www.meetup.com/drupalnetherlands/events/173046492/) on the subject of Continuous Integration on Acquia. I gave a refreshed presentation of one done on CI by Acquia in a 2012 Webinar and focused on the pillars that allow our customers to assemble a full CI implementation tailored to their own needs and workflows.

Published in: Technology

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

No Downloads
Views
Total Views
221
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Implementing Continuous Integration Best Practices with Drupal Barry Jaspan Senior Architect May 22nd  2014 Jess Iandiorio Sr. Director, Cloud Product  Marketing Niels van Mourik Backline support engineer Acquia Client Advisory Team
  • 2. Creating killer websites  is hard …
  • 3. Deploying them  shouldn’t be.
  • 4. Yeah, right.
  • 5. Continuous Integration decides  between success or failure • Work in small batches • Always know where you stand • Release often so there are no big surprises • Test everything
  • 6. Principles of Continuous Integration • Use a source code repository • Automate testing • Test in a clone of the production environment • Make all versions easily accessible • Have an audit trail (“blame list”) • Automate site deployment • Measure results  • Iterate rapidly http://en.wikipedia.org/wiki/Continuous_integration
  • 7. Sounds great. How do I  get there?
  • 8. Option 1: Build it Yourself • Git/SVN server • Lots of Jenkins jobs • Deploy on commit • Copy DB/files for dev • Test on deploy • Tag and release on success • Many more… • OS management • Server build • Security updates • Multiple web vhosts • Domains, SSL, php.ini, … • Multiple databases • Manage credentials • HA, memcached, Varnish,  Tomcat, Jenkins, Solr, ...  Scaling all of this • Backups and restores • 24/7 monitoring
  • 9. You do not want to do  this. (If you want this job, I have a job for you)
  • 10. Option 2: Use someone  else's
  • 11. Principles of Continuous Integration • Use a source code repository • Automate testing • Test in a clone of the production environment • Make all versions easily accessible • Have an audit trail (“blame list”) • Automate site deployment • Measure results  • Iterate rapidly
  • 12. Acquia Cloud free tier Completely free for site  development. • Intuitive Dev workflow • Power tools for power  users • Drupal­optimized  infrastructure • No production sites www.acquia.com/acquia­ cloud­for­free
  • 13. Acquia Cloud AC/DC 'Dev Cloud'
  • 14. Acquia Cloud Enterprise ACE 'Managed Cloud' Never let your best day  become your worst. • White­glove managed  service for mission­  critical Drupal websites • Drupal­tuned hosting  infrastructure • HA, elastic resources with  multi­region failover
  • 15. One size doesn't fit all Therefore Acquia's CI solution allow you to assemble it to your needs and workflow
  • 16. SSH Read­only SSH access to your document root(s) • Upload SSH pubkeys • Access to file directory • All Drush flavors available • Access to all web servers • VPN to your network is a  possibility
  • 17. Cloud Hooks Act upon anything that is happening on your site • hooks / [ENV] / [name].sh • Run any drush command • Clean production DB's during  copies/dumps (e.g. cache tbls) • Run your tests and e­mail/ssh  results • Some events: • post­code­deploy • post­db­copy • post­files­copy http://bit.ly/1oj3YPM https://github.com/acquia /cloud­hooks
  • 18. Acquia Cloud API Automate everything you could click­ethy­click! • Nice RESTful goodness • 40 drush integration cmds • Therefore entirely scriptable • Deploy tags and branches • Databases • Domain names • Purge varnish • Copy files https://cloudapi.acquia.com/
  • 19. https://www.youtube.com/watch?v=_iA8h-Bh1Z0
  • 20. Putting things together with CI systems
  • 21. Jenkins, Travis CI, CruiseControl • Acquia focuses on Drupal • VPS: el­cheapo 5,00 €  • Make your Acquia Cloud  a scripted marionet... • Your build server, your  workflow  https://cloudapi.acquia.com/
  • 22. • For more information visit: http://www.acquia.com • Sales: sales@acquia.com / (+31) (0) 20 890 3987 • Twitter: @acquia • Comments welcome: niels.vanmourik@acquia.com this presentation is available as webinar on: http://acquia.com/resources/recorded_webinars Questions?