Your SlideShare is downloading. ×
Vagrant: плагины и гастрономический фестиваль
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Vagrant: плагины и гастрономический фестиваль

483
views

Published on

Published in: Technology

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
483
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
5
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Express42// follow: @Express42_ru Vagrant: плагины и гастрономический фестиваль
  • 2. Express42// follow: @Express42_ru Vagrant и Работа с проектом клиента • Подготовка chef кукбуков специфичных для клиента • Интеграция компонентов проекта между собой • Доработка интеграций, кукбуков, и т.д. Разработка своих кукбуков • Разработка кукбуков для различных сервисов • Тестирование кукбуков
  • 3. Express42// follow: @Express42_ru Vagrant и ! • Не лепить костыли (по возможности) • Быстрый vagrant provision • Работать в полевых условиях • Интеграция с разными окружениям
  • 4. Express42// follow: @Express42_ru vagrant-cachier • Пришел на смену vagrant-apt_cache • Кеширует deb/gem/… в пределах box или machine • Вам нужен будет хоть какой-то интернет https://github.com/fgrehm/vagrant-cachier
  • 5. Express42// follow: @Express42_ru nugrant • Параметризация Vagrantfile с помощью yaml • Удобно для распространения Vagrantfile https://github.com/maoueh/nugrant
  • 6. Express42// follow: @Express42_ru nugrant ...! config.vm.define config.user.vmname do |main|! ! main.vm.network :forwarded_port, guest: 80, host: 8080! ! main.vm.hostname = config.user.vmname! ! config.vm.provision :chef_solo do |chef|! ! ! chef.encrypted_data_bag_secret_key_path = config.user.encrypted_secret_key_path! ! end! end! ... cat ./.vagrantuser! vmname: "web01"! encrypted_secret_key_path: "<some_path>/encrypted_data_bag_secret"
  • 7. Express42// follow: @Express42_ru landrush • Автоматически настраиваемый dns сервер • Добавляет пару hostname – IP машины в заданный вами поддомен • Больше не надо править /etc/hosts • Работает как для хоста(в MAC OS из коробки) так и для гостевых машин https://github.com/phinze/landrush
  • 8. Express42// follow: @Express42_ru landrush Vagrant.configure("2") do |config|! ...! config.landrush.enable! config.landrush.tld = 'vagrant'! ! config.vm.define :web01 do |main|! main.vm.network :forwarded_port, guest: 80, host: 8080! main.vm.hostname = "web01.vagrant"! end! end! ping web01.vagrant! PING web01.vagrant (172.28.128.5): 56 data bytes! 64 bytes from 172.28.128.5: icmp_seq=0 ttl=64 time=0.292 ms ping deploy.web01.vagrant! PING deploy.web01.vagrant (172.28.128.5): 56 data bytes! 64 bytes from 172.28.128.5: icmp_seq=0 ttl=64 time=0.292 ms
  • 9. Express42// follow: @Express42_ru Плагины на каждый день • vagrant-auto_network • vagrant-libvirt • vagrant-persistent-storage • vagrant-parallels ;)
  • 10. Жизнь удалась?
  • 11. Express42// follow: @Express42_ru • Показать возникшую ошибку • Дать разработчику возможность сделать ресерч • Показать что-то с локальной машины Как обычно решают • Скриншоты (от двух до пяти) • ssh -R; nc -p 2222 ; … ; и настроить ваш роутер! Проблема
  • 12. Show me your kitchen!
  • 13. Express42// follow: @Express42_ru • Показать ошибки/баги/… • Тестировать коллбеки внешних систем • Показать прототип новой фичи • Попросить помощи VAGRANT-FOODSHOW
  • 14. Express42// follow: @Express42_ru VAGRANT-FOODSHOW • Вся конфигурация в Vagrantfile • Работает только тогда, когда запущена VM • Использует ngrok для туннелирования http://foodshow.io https://github.com/express42/vagrant-foodshow
  • 15. Express42// follow: @Express42_ru NGROK
  • 16. Express42// follow: @Express42_ru NGROK •Туннелирование HTTP/S с интроспекцией запросов •Туннелирование любого бинарного протокола •Резервирование адресов вида <domain>.ngrok.com •basic-auth для http/s протокола •Opensource! Go(lang) inside! https://github.com/inconshreveable/ngrok
  • 17. Express42// follow: @Express42_ru VAGRANT-FOODSHOW Пример конфигурации Vagrant.configure("2") do |config|! #Enable foodshow! config.foodshow.enabled = true! ...! # Define vm! config.vm.define :web01 do |conf|! ...! #Just add ngrok_proto parameter to your port forwarding entry! conf.vm.network :forwarded_port, guest: 80, host: 8080, ngrok_proto: "http+https"! ...! end! end!
  • 18. Express42// follow: @Express42_ru VAGRANT-FOODSHOW
  • 19. Express42// follow: @Express42_ru Интроспекция запросов
  • 20. Express42// follow: @Express42_ru • Вышел Vagrant 1.5 • Встроенный плагин Vagrant Share • Облако для распространения box VAGRANT CLOUD
  • 21. Express42// follow: @Express42_ru Конец. twitter: @ex_sample email: sample.n@gmail.com

×