Advertisement
Guest User

Untitled

a guest
May 9th, 2017
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.29 KB | None | 0 0
  1. # vim: set ft=ruby:
  2.  
  3. # port on VM => port on host machine
  4. port_mapping = {
  5. 80 => 8080,
  6. 443 => 4343,
  7. 1004 => 8081,
  8. 9200 => 9201,
  9. }
  10.  
  11. Vagrant.configure("2") do |config|
  12. config.vm.box = "bento/centos-7.2"
  13. config.vm.box_url = "bento/centos-7.2"
  14.  
  15. port_mapping.each do |guest_port, host_port|
  16. config.vm.network :forwarded_port, {
  17. :guest => guest_port,
  18. :host => host_port,
  19. }
  20. end
  21.  
  22. config.vm.provision "chef_solo", run: "always" do |chef|
  23. chef.channel = 'stable'
  24. chef.version = '12.9.41'
  25. chef.cookbooks_path = "dev/provision/cookbooks"
  26. chef.json = {
  27. :memcache_host => "localhost",
  28. :sessions_host => "localhost",
  29. :mysql_prod_user => "root",
  30. :mysql_prod_pass => '',
  31. :mysql_core_host => "localhost",
  32. :mysql_core_user => "root",
  33. :mysql_core_pass => "",
  34. :php_version => "5.6w",
  35. :redis_host => "localhost",
  36. :skip_archive_app => true
  37. }
  38. chef.add_recipe "localdev"
  39. end
  40.  
  41. config.vm.provision "ansible" do |ansible|
  42. ansible.playbook = "playbook.yml"
  43. end
  44.  
  45. config.vm.provider :vmware_fusion do |v|
  46. v.gui = false
  47. v.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
  48. v.customize ["modifyvm", :id, "--natdnsproxy1", "on"]
  49. v.vmx["memsize"] = ram
  50. v.vmx["numvcpus"] = cpus
  51. end
  52.  
  53. config.vm.provider :virtualbox do |v|
  54. v.gui = false
  55. v.memory = ram
  56. v.cpus = cpus
  57. end
  58.  
  59. config.vm.network :private_network, ip: "10.11.12.13"
  60. config.vm.synced_folder ".", "/vagrant", {
  61. :nfs => {:mount_options => ['dmode=777,fmode=666']},
  62. }
  63.  
  64. config.ssh.forward_agent = true
  65. # Enable port forwarding on startup
  66. config.trigger.after [:provision, :up, :reload] do
  67. system(
  68. 'echo "
  69. rdr pass on lo0 inet proto tcp from any to 127.0.0.1 port 80 -> 127.0.0.1 port 8080
  70. rdr pass on lo0 inet proto tcp from any to 127.0.0.1 port 443 -> 127.0.0.1 port 4343
  71. " | sudo pfctl -ef - > /dev/null 2>&1; echo "==> Fowarding Ports: 80 -> 8080, 443 -> 4343 & Enabling pf"'
  72. )
  73. end
  74.  
  75. # Disable port forwarding on shutdown
  76. config.trigger.after [:halt, :destroy] do
  77. system("sudo pfctl -df /etc/pf.conf > /dev/null 2>&1; echo '==> Removing Port Forwarding & Disabling pf'")
  78. end
  79. end
  80.  
  81. def cpus
  82. `sysctl -n hw.ncpu`.to_i / 2 # 1/2 of your laptop's total cores
  83. end
  84.  
  85. def ram
  86. cpus * 2 * 1024 # 2G per VCPU
  87. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement