Coding and Development
Remember when you'd work on a live site by changing the files locally, then by using FTP you'd upload said changes and everything would be dandy? Except when you'd introduce an unwanted change? And there'd be no way to revert, or it would be really difficult to do so? In this session, I'll go through the evolution of deployments that happened to TEN7 over the last almost 10 years of our existence. You may be somewhere along this journey yourself, or you may have already reached that ultimate Nirvana that we're still striving for. We have a mixture of states, all under git control, some automated, some completely hands off, some in need of manual intervention. I'll go through where we started with FTP; how we started using Subversion (SVN) + rsync; how we migrated to using one git repo for all of our projects (MISTAKE); how we wrote our own git automation; and how we, finally, evolved to using a deployment of Gitlab with Continuous Integration to provide Continuous Delivery of our code to preview, release and live environments. I'll spend more time on the continuous delivery portion, including automated Behat testing, Visual Regression with slimerjs and casperjs, and how you too can implement this with tools that are freely available. I'll also mention how our workflow compares with what's out there from Pantheon, Acquia and others. Come join me for the ride!