Your SlideShare is downloading. ×
Continuous Delivery with Sitecore
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

Continuous Delivery with Sitecore

3,732

Published on

Every month, Sitecore brings together developers from across the North West to share learning's and discuss their experiences of working with the platform. …

Every month, Sitecore brings together developers from across the North West to share learning's and discuss their experiences of working with the platform.

As Sitecore partners, we’ve been involved with plenty of these meet ups in the past, and so were pleased to not only host, but also present at, the latest user group event.

In July, Computerlovers’ Richard and Ben talked about what it’s like to work with Sitecore in an agile environment whilst adopting a continuous delivery approach.

Published in: Technology
0 Comments
6 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
3,732
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
74
Comments
0
Likes
6
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.  What is it ?  Why do we do it ?  How do we do it ?  Integrating with Sitecore ?  What’s next ?  Q & A
  • 2. Test Deploy PromoteFeedback Implement Build
  • 3.  Lots of good stuff out there  Recent User group presentation & blog posts  Lee Cook (Aqueduct) Continuous Delivery  Kern Herskind - Exploring Sitecore Item Serialisation  Alexander Doroshenko - Sitecore Continuous Deployment: From Zero to Hero
  • 4.  It fits with our Agile approach  Reduce Cycle time  Takes the pain out of releases  Automating the mundane leaves more time to innovate  Continuous Feedback leads to Continuous Improvement
  • 5.  2 week Sprint Cycle  Deploy to UAT at the end of the sprint  Automated Functional & Regression Tests  Client Approval  Deploy to Production
  • 6. Product Backlog Sprint Backlog Release Daily Scrum Sprint (2 weeks) Sprint review & Retrospective
  • 7.  Team City Build Server  Solution built on every check-in  Run Unit Tests  Run Functional Tests  Alert dev team on failure
  • 8.  Visual Studio, SlowCheetah, Config Transforms  NUnit  SVN (Moving to Git)  Team City  Nant, Powershell, Psake, Powercore  Sitecore Courier  Octopus Deploy
  • 9.  Cucumber  Capybara with Selenium 2 (webdriver) and Poltergeist drivers  Selenium grid 2 hub/nodes for testing in parallel against both desktop and mobile browsers.
  • 10.  Code is the easy part  Config transforms  Multiple environments  Different Server Profiles (CA/CD)  Code reliant on templates/content items
  • 11.  Add Transforms to any xml file  Preview Transformations  Transforms run at build time  Works with Octopus Deploy
  • 12.  Any config file will be merged at runtime – transform files will break Sitecore  3 Options:  Maintain config per environment  Manipulate with Powershell  Single transformation file run against all .config files in includes folder
  • 13.  Manually create and install packages  Automate Package creation installation  TDS  Unicorn  Courier – more on this later
  • 14.  Cruise Control  Nant Build Scripts  packaged executable  Nant Deploy Script  Custom config replacements per environment  Manual Package creation  All templates and layouts  Slow prone to errors
  • 15.  Team City  Octopus Deploy  Packages  Sitecore courier + custom pipeline  Creates update packages delta changes  Reduce package size  Quicker to transfer  Quicker to install  Quicker to publish
  • 16.  Introduce internal QA environment  Allows existing and new process to run in parallel  Test deployment process  Introduce more functional testing
  • 17. • Build • Unit Tests • Smoke Tests Dev • Functional Regression Tests • Client Approval UAT • Release Prod 4hrs 4hrs Total: 8hrs
  • 18. •Build •Unit Tests Dev •Automated Functional Tests •Smoke Tests QA •External Functional / Regression Tests •Client Approval UAT •Release Prod 0hrs 1 hr 1hr Total: 2hrs
  • 19.  Templates & Layouts serialised to disk automatically on save/move/delete  Item’s checked into source control with code  Build runner generates a differential package against release tag  Update package included in the nuget package  Deployed and installed as part of release to each environment  Release tag updated after release to production  Next sprints work differential against last release
  • 20.  Courier called using PSake via Runner. Build Parameters can be passed or use defaults
  • 21.  Courier can install any item Templates, Layouts, System Items and Content Items  But should you?  Risk of overwriting user content  Content packages created and installed manually  Use defensive coding – If a sublayout requires a particular content item that isn’t deployed then hide the component
  • 22.  Localised developer serialisation folders  Committed to Subversion/Git  Differential package generated using Courier and Serialisation tag  Sitecore Serialisation Issues  Path Length
  • 23.  Moved to Team City  Automated Deployment Steps through Octopus to QA  Deployment time down from 4hrs to approx 1hr  Per sprint saves approx 1 day developer effort.  Bolstered internal Testing Suite  Reduced Cycle Time for issue resolution
  • 24.  Git – Feature Branching  Automated deployments to Oxfam environments  Automatic load balancer switching – zero downtime  Increased flexibility to release  One click deployment
  • 25.  SDN (http://sdn.sitecore.net )  Team City (http://www.jetbrains.com/teamcity)  Octopus Deploy (http://octopusdeploy.com)  SlowCheetah (http://visualstudiogallery.msdn.microsoft.com/69023d00-a4f9-4a34-a6cd- 7e854ba318b5)  Sitecore-PowerCore (https://github.com/adoprog/Sitecore-PowerCore)  Sitecore Courier (http://sitecorecourier.codeplex.com)  Sitecore Continuous Deployment: From Zero to Hero (http://sitecoresnippets.blogspot.co.uk/2013/05/sitecore-continuos-deployment-from- zero.html#.Ueahq_nVDzw)

×