Recently it has become common practise for development teams to deploy their code several times a day, as well as encouraging new developers to deploy on their first day at work.
In this talk, I will discuss how I use continuous deployment to push these practises to the extreme. Automatically deploying the master branch on new changes is an awesome way to improve your development process.
Automatically deploying master will fundamentally change how you work. Gone are the days of the epic pull request. You'll quickly find yourself writing smaller more manageable chunks of code, that overall have a great impact on the quality of the software you produce.
By the end of the talk you'll know how to change the GitHub merge pull request button into a deploy button - and have the confidence to do so.
Some things I'll go over in the talk:
How to setup your CI environment for deployments
Why having fast tests are important
How to use your Staging environment for testing deployments
How to use feature flags to hide deployed features from some users
Zero downtime deploys, even when there are database migrations
Your new deploy button, AKA The GitHub merge pull request button
What to do when deployment goes wrong