VIRTUALIZED DEVELOPMENT   Juozas Kaziukėnas // juokaz.com // @juokaz
Juozas Kaziukėnas, LithuanianYou can call me JoeMore info http://juokaz.com
LOCAL DEV SETUP IS HARD
MIRROR PRODUCTION
IF THINGS WORK LOCALLY,    THEY WILL WORK IN      PRODUCTION*
REPLICATING BUGS
DATABASE SLICE
SETTING UP DEVENVIRONMENTS
TRICKY
TIME CONSUMING
EVERYTHING STILL BREAKS
NEED TO AUTOMATE
SHELL SCRIPTS ARE NOT A       SOLUTION
BRAINFUCK
CHEF OR PUPPET
PUPPET
RECIPES DESCRIBING A       SERVER
PUPPET EXAMPLE$php = ["php5","php5-xdebug"]package { $php: ensure => "installed" }
PUPPET EXAMPLE$php = ["php5","php5-xdebug"]package { $php: ensure => "installed" }package { "apache2":    ensure => presen...
PUPPET EXAMPLE$php = ["php5","php5-xdebug"]package { $php: ensure => "installed" }package { "apache2":    ensure => presen...
PUPPET EXAMPLEfile { "/etc/apache2/sites-available/default":    ensure => present,    source => "/vagrant/manifests/defaul...
PUPPET EXAMPLEfile { "/etc/apache2/sites-available/default":    ensure => present,    source => "/vagrant/manifests/defaul...
WHAT TO USE LOCALLY
NEED A VM?
THE COOLEST THING I LEARNED LAST YEAR
BECAUSE IM LAZY
VAGRANT
VAGRANTNounA person without a settled home or regular workwho wanders from place to place and lives bybegging.
TOOL TO BUILD A LOCAL       CLOUD
  BUILDING VMS
RUBYGEM FOR MANAGING   VIRTUAL MACHINES
IMPROVE DEVELOPMENT
MADE DEVELOPERS VERY       HAPPY
MADE HIRING VERY EASY
MADE COMPLICATEDDEVELOPMENT EASY
NO LOCAL MACHINE   MESSING UP 
SETUP NOW
INSTALL VAGRANT
GIT CLONE REPO
VAGRANT UP
  PREDICTABLE, STABLE AND       MANAGEABLE
VAGRANT
BASEBOX
PORT FORWARDING
SHARED FOLDERS
NO NEED TO DEPLOY
FEELS LOCAL
VAGRANT SSH
LOCAL CLOUD
VERSION CONTROL
SHARE VMS
DEMO!!!
THANKS
Virtualized development - Sunshine PHP
Virtualized development - Sunshine PHP
Upcoming SlideShare
Loading in...5
×

Virtualized development - Sunshine PHP

1,563

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,563
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
7
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Virtualized development - Sunshine PHP

  1. 1. VIRTUALIZED DEVELOPMENT Juozas Kaziukėnas // juokaz.com // @juokaz
  2. 2. Juozas Kaziukėnas, LithuanianYou can call me JoeMore info http://juokaz.com
  3. 3. LOCAL DEV SETUP IS HARD
  4. 4. MIRROR PRODUCTION
  5. 5. IF THINGS WORK LOCALLY, THEY WILL WORK IN PRODUCTION*
  6. 6. REPLICATING BUGS
  7. 7. DATABASE SLICE
  8. 8. SETTING UP DEVENVIRONMENTS
  9. 9. TRICKY
  10. 10. TIME CONSUMING
  11. 11. EVERYTHING STILL BREAKS
  12. 12. NEED TO AUTOMATE
  13. 13. SHELL SCRIPTS ARE NOT A SOLUTION
  14. 14. BRAINFUCK
  15. 15. CHEF OR PUPPET
  16. 16. PUPPET
  17. 17. RECIPES DESCRIBING A SERVER
  18. 18. PUPPET EXAMPLE$php = ["php5","php5-xdebug"]package { $php: ensure => "installed" }
  19. 19. PUPPET EXAMPLE$php = ["php5","php5-xdebug"]package { $php: ensure => "installed" }package { "apache2": ensure => present,}
  20. 20. PUPPET EXAMPLE$php = ["php5","php5-xdebug"]package { $php: ensure => "installed" }package { "apache2": ensure => present,}service { "apache2": ensure => running, enable => true, require => Package[apache2], subscribe => [File["/etc/apache2/mods-enabled/rewrite.load"], File["/etc/apache2/sites-available/default"]],}
  21. 21. PUPPET EXAMPLEfile { "/etc/apache2/sites-available/default": ensure => present, source => "/vagrant/manifests/default",}
  22. 22. PUPPET EXAMPLEfile { "/etc/apache2/sites-available/default": ensure => present, source => "/vagrant/manifests/default",}exec { "install_phpunit": command => "/usr/bin/pear install pear.phpunit.de/PHPUnit", require => [Package[php-pear], Exec[/usr/bin/pear config-set auto_discover 1]], creates => "/usr/bin/phpunit"}
  23. 23. WHAT TO USE LOCALLY
  24. 24. NEED A VM?
  25. 25. THE COOLEST THING I LEARNED LAST YEAR
  26. 26. BECAUSE IM LAZY
  27. 27. VAGRANT
  28. 28. VAGRANTNounA person without a settled home or regular workwho wanders from place to place and lives bybegging.
  29. 29. TOOL TO BUILD A LOCAL CLOUD
  30. 30.   BUILDING VMS
  31. 31. RUBYGEM FOR MANAGING VIRTUAL MACHINES
  32. 32. IMPROVE DEVELOPMENT
  33. 33. MADE DEVELOPERS VERY HAPPY
  34. 34. MADE HIRING VERY EASY
  35. 35. MADE COMPLICATEDDEVELOPMENT EASY
  36. 36. NO LOCAL MACHINE MESSING UP 
  37. 37. SETUP NOW
  38. 38. INSTALL VAGRANT
  39. 39. GIT CLONE REPO
  40. 40. VAGRANT UP
  41. 41.   PREDICTABLE, STABLE AND MANAGEABLE
  42. 42. VAGRANT
  43. 43. BASEBOX
  44. 44. PORT FORWARDING
  45. 45. SHARED FOLDERS
  46. 46. NO NEED TO DEPLOY
  47. 47. FEELS LOCAL
  48. 48. VAGRANT SSH
  49. 49. LOCAL CLOUD
  50. 50. VERSION CONTROL
  51. 51. SHARE VMS
  52. 52. DEMO!!!
  53. 53. THANKS
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×