Deployment
Webserver
Application - version 1 Install code
Migrations
Warmup cache
Application - version 2
Slide 62
Slide 62 text
Deployment
Webserver
Application - version 1 Install code
Migrations
Warmup cache
Application - version 2
Slide 63
Slide 63 text
Example
/var
/project
/releases
/20160608-1.0
/20160609-1.1
/current -> /var/project/releases/20160608-1.0
Slide 64
Slide 64 text
0 downtime - Don't touch the current version
- Abort when any of the steps fail
- Make your migrations backwards
compatible
Slide 65
Slide 65 text
Put it in a box
Slide 66
Slide 66 text
Repeatable
Slide 67
Slide 67 text
Environment
independent
Slide 68
Slide 68 text
The box In it's simplest form: just a zip
Slide 69
Slide 69 text
Independent
Slide 70
Slide 70 text
Reusable
On all environments
Slide 71
Slide 71 text
Some challenges
Slide 72
Slide 72 text
Filesystem
Slide 73
Slide 73 text
/var/www/uploads/
Slide 74
Slide 74 text
Flysystem
Abstract the filesystem
- Makes it easier to test
- Makes your code independent of
the filesystem, f.e.:
- Production uses S3
- Development uses local files
Building the box - Should be reusable
- Eliminate hard dependencies on
environment
- Give control to the environment
Slide 91
Slide 91 text
Summary
- Less manual steps, eliminate the
humans
- Lose the fear: test your stuff
- Deploy more often, don't
postpone
- Deployment shouldn't cause
downtime
- A deployment should be
repeatable
Slide 92
Slide 92 text
Other questions?
@willemjanz
Please leave some feedback! joind.in/talk/73636