-
-
Notifications
You must be signed in to change notification settings - Fork 3
/
Vagrantfile
107 lines (95 loc) · 3.92 KB
/
Vagrantfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.require_version ">= 1.6.2"
cpus = 2
description = "Windows 10 Enterprise (Insider's Preview)"
memory = 4096
Vagrant.configure("2") do |config|
config.ssh.password = "vagrant"
config.ssh.username = "vagrant"
config.vm.define "" do |os|
os.vm.box="Megabyte/Windows-Desktop"
os.vm.hostname = "vagrant-windows"
os.vm.network "forwarded_port", guest: 22, host: 58022, id: "ssh", auto_correct: true
os.vm.network "forwarded_port", guest: 80, host: 58080, id: "http", auto_correct: true
os.vm.network "forwarded_port", guest: 443, host: 58443, id: "https", auto_correct: true
os.vm.network "forwarded_port", guest: 3389, host: 53389, id: "rdp", auto_correct: true
os.vm.provider "hyperv" do |v|
v.cpus = cpus
v.maxmemory = memory
v.vmname = description
end
os.vm.provider "parallels" do |v|
v.cpus = cpus
v.memory = memory
v.name = description
v.update_guest_tools = true
end
os.vm.provider "libvirt" do |v, override|
v.cpus = cpus
v.memory = memory
# Use WinRM for the default synced folder; or disable it if
# WinRM is not available. Linux hosts don't support SMB,
# and Windows guests don't support NFS/9P/rsync
# Source: https://github.com/Cimpress-MCP/vagrant-winrm-syncedfolders
if Vagrant.has_plugin?("vagrant-winrm-syncedfolders")
override.vm.synced_folder ".", "/vagrant", type: "winrm"
else
override.vm.synced_folder ".", "/vagrant", disabled: true
end
# Enable Hyper-V enlightments - Source: https://blog.wikichoon.com/2014/07/enabling-hyper-v-enlightenments-with-kvm.html
v.hyperv_feature :name => 'stimer', :state => 'on'
v.hyperv_feature :name => 'relaxed', :state => 'on'
v.hyperv_feature :name => 'vapic', :state => 'on'
v.hyperv_feature :name => 'synic', :state => 'on'
end
os.vm.provider "virtualbox" do |v|
v.check_guest_additions = true
v.cpus = cpus
v.customize ["modifyvm", :id, "--accelerate3d", "on"]
v.customize ["modifyvm", :id, "--clipboard", "bidirectional"]
v.customize ["modifyvm", :id, "--graphicscontroller", "vmsvga"]
v.customize ["modifyvm", :id, "--hwvirtex", "on"]
v.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
v.customize ["modifyvm", :id, "--vram", "256"]
v.customize ["setextradata", "global", "GUI/SuppressMessages", "all"]
v.gui = true
v.memory = memory
v.name = description
end
os.vm.provider "vmware_fusion" do |v|
v.gui = true
v.vmx["ethernet0.virtualDev"] = "vmxnet3"
v.vmx["gui.fitGuestUsingNativeDisplayResolution"] = "TRUE"
v.vmx["gui.fullScreenAtPowerOn"] = "TRUE"
v.vmx["gui.lastPoweredViewMode"] = "fullscreen"
v.vmx["gui.viewModeAtPowerOn"] = "fullscreen"
v.vmx["memsize"] = memory.to_s
v.vmx["mks.enable3d"] = "TRUE"
v.vmx["mks.forceDiscreteGPU"] = "TRUE"
v.vmx["numvcpus"] = cpus.to_s
v.vmx["RemoteDisplay.vnc.enabled"] = "TRUE"
v.vmx["RemoteDisplay.vnc.port"] = "5900"
v.vmx["sound.autodetect"] = "TRUE"
v.vmx["sound.present"] = "TRUE"
v.vmx["sound.startConnected"] = "TRUE"
end
os.vm.provider "vmware_workstation" do |v|
v.gui = true
v.vmx["ethernet0.virtualDev"] = "vmxnet3"
v.vmx["gui.fitGuestUsingNativeDisplayResolution"] = "TRUE"
v.vmx["gui.fullScreenAtPowerOn"] = "TRUE"
v.vmx["gui.lastPoweredViewMode"] = "fullscreen"
v.vmx["gui.viewModeAtPowerOn"] = "fullscreen"
v.vmx["memsize"] = memory.to_s
v.vmx["mks.enable3d"] = "TRUE"
v.vmx["mks.forceDiscreteGPU"] = "TRUE"
v.vmx["numvcpus"] = cpus.to_s
v.vmx["RemoteDisplay.vnc.enabled"] = "TRUE"
v.vmx["RemoteDisplay.vnc.port"] = "5900"
v.vmx["sound.autodetect"] = "TRUE"
v.vmx["sound.present"] = "TRUE"
v.vmx["sound.startConnected"] = "TRUE"
end
end
end