Download presentation
Presentation is loading. Please wait.
1
Continuous Deployment
Presented by Catalyst IT // Wednesday the 23rd of March 2016
2
Continuous Deployment
What? Why? What (I decided it is) How! Examples! Why YOU
3
What is Continuous Deployment?
No one can agree! Automated deployment after test pass? Every change being able to be deployed to production? Automating the deployment process? Continuous Delivery!?
4
Why continuous deployment – For Catalyst?
Disagreements over packaging Sysadmin type people availability Unfriendly console driven processes Desire for automated testing Less need for special access to systems for special people
5
A way of no one fearing doing a deployment because it’s done so often
What I’ve decided it is Enforced testing Enforced use of revision control Consistent view of deployment A way of no one fearing doing a deployment because it’s done so often
6
Enforced testing – What?
A syntax check of all code Becomes impossible to do a deployment with a syntax error Developer has tested the part of the code they are working on most recently, forgot about other parts Maybe check coding standards too?
7
Enforced testing – What?
Check any database schema changes actually work, upgrade script works Check Moodle can install from scratch Behat behaviour driven automated testing Human approval by QA people
8
Enforced use of revision control
Only route to tests Only route to deployment No naughty ‘hacks on live’ that get forgotten about Everyone can see who did what and when
9
How Continuous Deployment?
Scripts/Some crazy dev C(r)apistrano Driven from workstation User required permissions on systems Or a good tool GoCD, Jenkins
10
Case Study One – Too much merging
Moodle fixes, individually don’t take long to git merge into a code branch site and commit the change But if you have 60 or so Moodle based systems to update, it becomes a big boring job Automate.. the merging of the updates from Moodle.org, the testing and the deployment No deployment fear and time saved
14
Case study two – Multi-system dependency
We need to be able to deploy reliably a Moodle / Mahara combination Check each version works with the other Non-Standard Single Sign On system to also verify Behat behaviour testing of SSO and other parts
17
Un-expected downsides
Developers get sad when they can’t use GoCD to deploy something It did take quite a bit of time to iron out the bugs That’s it
18
Things CD could do for you
Keep all your Moodles up to date (Eg, you have one per school) Test integrations between Moodle and your bespoke systems De-stress your developers who don’t like operating on production systems De-stress your sysadmin types who are unfamiliar with Moodle Or any of your other bespoke systems
19
Deploy to UAT / Staging with greater frequency
Unexpected benefits Deploy to UAT / Staging with greater frequency Customer can see fixes right away We’ve had to make the final deployments work in a very reliably
20
Deploy to developer environments with CD as well
Things we could do Feature toggles We have different code on staging and production Deploy to developer environments with CD as well
21
Things CD could do for you
Keep all your Moodles up to date (Eg, you have one per school) Test integrations between Moodle and your bespoke systems De-stress your developers who don’t like operating on production systems De-stress your sysadmin types who are unfamiliar with Moodle Or any of your other bespoke systems
22
http://tinyurl.com/h2mgskc - Great article
THE END - Great article I am: Simon Story – Twitter: NOPE
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.