Advertisement
Guest User

Untitled

a guest
Feb 18th, 2016
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.42 KB | None | 0 0
  1. VAGRANTFILE_API_VERSION = '2'
  2.  
  3. Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  4. config.vm.box = 'my_vmware'
  5.  
  6. config.ssh.private_key_path = 'vagrant_rsa'
  7. config.vm.box_check_update = false
  8.  
  9. config.vm.provider "vmware_workstation" do |v|
  10. v.vmx["memsize"] = 8 * 1024
  11. v.vmx["numvcpus"] = 3
  12. end
  13.  
  14. config.vm.network 'private_network', ip: '10.42.42.51'
  15.  
  16. config.vm.synced_folder '.', '/vagrant', disabled: true
  17. config.vm.synced_folder "./vagrant", "/vagrant", type: "smb", smb_username: 'yoda', smb_password: 'force', mount_options: ['ro']
  18. config.vm.synced_folder "/vmshared/db", "/mnt/db", type: "smb", smb_username: 'yoda', smb_password: 'force', mount_options: ['ro']
  19. config.vm.synced_folder "/vmshared/docker", "/mnt/docker", type: "smb", smb_username: 'yoda', smb_password: 'force', mount_options: ['ro']
  20. config.vm.synced_folder "/vmshared/tmp", "/mnt/tmp", type: "smb", smb_username: 'yoda', smb_password: 'force'
  21.  
  22. config.vm.provision 'shell', path: 'provision/hosts.sh', run: 'always'
  23. config.vm.provision 'shell', privileged: false, path: 'provision/home_configs.sh', run: 'always'
  24. config.vm.provision 'shell', path: 'provision/fonts.sh', run: 'always'
  25. config.vm.provision 'shell', privileged: false, path: 'provision/binaries.sh', run: 'always'
  26. config.vm.provision 'shell', path: 'provision/mysql.sh'
  27. config.vm.provision 'shell', privileged: false, path: 'provision/ssh.sh', run: 'always'
  28. config.vm.provision 'shell', path: 'provision/packages.sh'
  29.  
  30. config.vm.provision 'shell', privileged: false, path: 'provision/docker_images.sh'
  31. config.vm.provision 'docker' do |d|
  32. d.run 'mongo',
  33. image: 'mongo:2.6.9',
  34. args: '-P'
  35.  
  36. d.run 'redis',
  37. image: 'redis:2.8',
  38. args: '-P'
  39. end
  40. # always reboot docker services
  41. config.vm.provision 'shell', inline: 'service docker restart', run: 'always'
  42. config.vm.provision 'shell', privileged: false, inline: 'docker start mongo redis', run: 'always'
  43.  
  44. config.vm.provision 'shell', privileged: false, path: 'provision/zsh.sh'
  45.  
  46. # vagrant-trigger plugin
  47. config.trigger.after [:suspend, :halt, :destroy] do
  48. puts '------- OLD SHARES----------'
  49. puts `net share`
  50. share_data = `net share`
  51. result = share_data.scan(/([a-z0-9]{32})/)
  52. result.each do |share|
  53. command = "net share #{share[0]} /delete"
  54. puts "Executing: #{command}"
  55. system command
  56. end
  57. puts '------- NEW SHARES----------'
  58. puts `net share`
  59. end
  60.  
  61. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement