45
AmsterdamPHP 17-12-2015 Deploying using Deployer Jeroen v.d. Gulik

Deploying using deployer

Embed Size (px)

Citation preview

Page 1: Deploying using deployer

AmsterdamPHP 17-12-2015

Deploying using Deployer

Jeroen v.d. Gulik

Page 2: Deploying using deployer

About me

❖ CTO / Co-Founder Isset (http://isset.nl)

❖ Señor Developer

❖ Builder of Artificial Stupidity

❖ @n0x13

❖ Likes Cats … a lot

Page 3: Deploying using deployer
Page 4: Deploying using deployer

Who uses a deployment tool?

Page 5: Deploying using deployer
Page 6: Deploying using deployer
Page 7: Deploying using deployer

Why use a deployment tool?

Page 8: Deploying using deployer

❖ Manual isn’t practical

❖ Lots of tasks

❖ Keep history of deployment script

❖ Automation

❖ Security

❖ Lazy

Page 9: Deploying using deployer

What options do we have?

Page 10: Deploying using deployer
Page 11: Deploying using deployer

❖ Capistrano (http://capistranorb.com/)

❖ Fabric (http://www.fabfile.org/)

❖ Phing (https://www.phing.info/)

❖ Rocketeer (http://rocketeer.autopergamene.eu/)

❖ Ansible (http://www.ansible.com/)

Page 12: Deploying using deployer

Deployer.org

Page 13: Deploying using deployer

Why Deployer ?❖ Fast

❖ Modular

❖ Clean Code

❖ Rollbacks

❖ Atomic deploys

❖ Parallel tasks

❖ Consistency

Page 14: Deploying using deployer

Why Deployer ?

❖ Simple

❖ Easy

❖ Plain Old PHP

❖ Composer installable

Page 15: Deploying using deployer

Requirements

❖ Linux Server

❖ Git

❖ PHP >= 5.4

Page 16: Deploying using deployer

Deployer Globally

Page 17: Deploying using deployer

Deployer Locally

Page 18: Deploying using deployer
Page 19: Deploying using deployer
Page 20: Deploying using deployer
Page 21: Deploying using deployer
Page 22: Deploying using deployer
Page 23: Deploying using deployer
Page 24: Deploying using deployer
Page 25: Deploying using deployer
Page 26: Deploying using deployer

Easy deploy

Page 27: Deploying using deployer
Page 28: Deploying using deployer
Page 29: Deploying using deployer

Easy Rollback

Page 30: Deploying using deployer
Page 31: Deploying using deployer

Easy Tasks

Page 32: Deploying using deployer

Run Tasks separately

Page 33: Deploying using deployer

List all Tasks

Page 34: Deploying using deployer

Run onlyOn …

Page 35: Deploying using deployer

Reuse Tasks with Recipes

Page 36: Deploying using deployer

Frameworks supported❖ CodeIgniter (yeah…)

❖ Drupal 7

❖ FuelPHP

❖ Laravel

❖ Magento

❖ Symfony

❖ WordPress

❖ Yii

❖ Yii2

❖ Zend

Page 37: Deploying using deployer

Symfony Recipe

Page 38: Deploying using deployer

Symfony 3

Page 39: Deploying using deployer

Functions

Page 40: Deploying using deployer

Serverlist externally

Page 41: Deploying using deployer

YAML

Page 42: Deploying using deployer

Defaults

Page 43: Deploying using deployer

Demo

Page 44: Deploying using deployer

Perfect?

❖ Only supports git

❖ Global namespace (Hamcrest)

Page 45: Deploying using deployer

Please rate my talk!

https://joind.in/16615