devops: using vagrant to enhance your day to day development
DESCRIPTION
TRANSCRIPT
![Page 1: DevOps: Using Vagrant to Enhance Your Day to Day Development](https://reader035.vdocuments.site/reader035/viewer/2022062614/545cb15bb0af9fa42c8b4827/html5/thumbnails/1.jpg)
DevOps: Using Vagrant To Enhance Your Day to Day Development
Rob Reynolds @ferventcoder
![Page 2: DevOps: Using Vagrant to Enhance Your Day to Day Development](https://reader035.vdocuments.site/reader035/viewer/2022062614/545cb15bb0af9fa42c8b4827/html5/thumbnails/2.jpg)
Who am I?• Developer at Puppet Labs
• Core FOSS Platform Team - we maintain Puppet, Facter, Hiera, etc
• Author of Chocolatey
• Co-author of Chuck Norris Framework (RoundhousE, DropkicK, UppercuT, etc)
![Page 3: DevOps: Using Vagrant to Enhance Your Day to Day Development](https://reader035.vdocuments.site/reader035/viewer/2022062614/545cb15bb0af9fa42c8b4827/html5/thumbnails/3.jpg)
What is Vagrant?Vagrant is a tool for building complete development environments. With an easy-to-use workflow and focus on automation, Vagrant lowers development environment setup time, increases development/production parity, and makes the "works on my machine" excuse a relic of the past.
![Page 4: DevOps: Using Vagrant to Enhance Your Day to Day Development](https://reader035.vdocuments.site/reader035/viewer/2022062614/545cb15bb0af9fa42c8b4827/html5/thumbnails/4.jpg)
![Page 5: DevOps: Using Vagrant to Enhance Your Day to Day Development](https://reader035.vdocuments.site/reader035/viewer/2022062614/545cb15bb0af9fa42c8b4827/html5/thumbnails/5.jpg)
Wait, Wat? Vagrant?Vagrant allows for
repeatable sandboxed environments
shareable
works on every machine
![Page 6: DevOps: Using Vagrant to Enhance Your Day to Day Development](https://reader035.vdocuments.site/reader035/viewer/2022062614/545cb15bb0af9fa42c8b4827/html5/thumbnails/6.jpg)
Vagrant is AWESOMEDevelopment environments are scripts, so source control
Share with friends, family, perhaps coworkers
Works on OSX, Windows, and most *nix flavors.
Simple configuration
Vagrant Up
![Page 7: DevOps: Using Vagrant to Enhance Your Day to Day Development](https://reader035.vdocuments.site/reader035/viewer/2022062614/545cb15bb0af9fa42c8b4827/html5/thumbnails/7.jpg)
![Page 8: DevOps: Using Vagrant to Enhance Your Day to Day Development](https://reader035.vdocuments.site/reader035/viewer/2022062614/545cb15bb0af9fa42c8b4827/html5/thumbnails/8.jpg)
Simple Commandsvagrant up
vagrant ssh
vagrant rdp (1.6+)
vagrant halt
vagrant reload
vagrant destroy
![Page 9: DevOps: Using Vagrant to Enhance Your Day to Day Development](https://reader035.vdocuments.site/reader035/viewer/2022062614/545cb15bb0af9fa42c8b4827/html5/thumbnails/9.jpg)
Vagrant ProvidersVirtualbox (builtin)
Hyper-V (vagrant-windows-hyperv)
VMWare (vagrant-vmware-fusion / vagrant-vmware-desktop)
Azure (vagrant-azure)
AWS (vagrant-aws)
More at https://bit.ly/vagrant-plugins
Build a custom provider
![Page 10: DevOps: Using Vagrant to Enhance Your Day to Day Development](https://reader035.vdocuments.site/reader035/viewer/2022062614/545cb15bb0af9fa42c8b4827/html5/thumbnails/10.jpg)
Vagrant Plugin Ecosystemsahara (snapshot) - sandbox in a sandbox
vagrant-global-status (in 1.6+)
vagrant-windows (deprecated as of 1.6+)
vagrant-reload
vagrant-oscar
vagrant-rdp (deprecated at 1.6.1+)
Much more - https://bit.ly/vagrant-plugins
![Page 11: DevOps: Using Vagrant to Enhance Your Day to Day Development](https://reader035.vdocuments.site/reader035/viewer/2022062614/545cb15bb0af9fa42c8b4827/html5/thumbnails/11.jpg)
Vagrant CloudBox Distribution
Discover
Share
Box versioning
https://vagrantcloud.com/
![Page 12: DevOps: Using Vagrant to Enhance Your Day to Day Development](https://reader035.vdocuments.site/reader035/viewer/2022062614/545cb15bb0af9fa42c8b4827/html5/thumbnails/12.jpg)
![Page 13: DevOps: Using Vagrant to Enhance Your Day to Day Development](https://reader035.vdocuments.site/reader035/viewer/2022062614/545cb15bb0af9fa42c8b4827/html5/thumbnails/13.jpg)
How can Vagrant help me?
![Page 14: DevOps: Using Vagrant to Enhance Your Day to Day Development](https://reader035.vdocuments.site/reader035/viewer/2022062614/545cb15bb0af9fa42c8b4827/html5/thumbnails/14.jpg)
Developer?Isolates dependencies & configuration
All members of team get their own sandbox
“Works on their machine?” == Works on your machine
Keep your tools and versions separate from testing needs
![Page 15: DevOps: Using Vagrant to Enhance Your Day to Day Development](https://reader035.vdocuments.site/reader035/viewer/2022062614/545cb15bb0af9fa42c8b4827/html5/thumbnails/15.jpg)
QA?No need to find a physical box.
Known starting point EVERY time.
Test on multiple OS platforms and versions with a single command
![Page 16: DevOps: Using Vagrant to Enhance Your Day to Day Development](https://reader035.vdocuments.site/reader035/viewer/2022062614/545cb15bb0af9fa42c8b4827/html5/thumbnails/16.jpg)
Ops?Disposable environment for testing infrastructure changes
You can take these same scripts and config and test against AWS, Azure, RackSpace with the same workflow
Sanity
![Page 17: DevOps: Using Vagrant to Enhance Your Day to Day Development](https://reader035.vdocuments.site/reader035/viewer/2022062614/545cb15bb0af9fa42c8b4827/html5/thumbnails/17.jpg)
Demos
![Page 18: DevOps: Using Vagrant to Enhance Your Day to Day Development](https://reader035.vdocuments.site/reader035/viewer/2022062614/545cb15bb0af9fa42c8b4827/html5/thumbnails/18.jpg)
Questions?@ferventcoder / ferventcoder at gmail
Official Talks #vagrant on freenode IRC
http://www.vagrantup.com
http://docs.vagrantup.com