37 lines
1.3 KiB
Ruby
37 lines
1.3 KiB
Ruby
WINDOWS_BOX = ENV.fetch("COVENANT_WINDOWS_BOX", "gusztavvargadr/windows-11")
|
|
WINDOWS_BOX_VERSION = ENV["COVENANT_WINDOWS_BOX_VERSION"]
|
|
VM_NAME = ENV.fetch("COVENANT_VM_NAME", "covenant-setup-windows")
|
|
VM_MEMORY = ENV.fetch("COVENANT_VM_MEMORY", "6144")
|
|
VM_CPUS = ENV.fetch("COVENANT_VM_CPUS", "4")
|
|
WINRM_USERNAME = ENV.fetch("COVENANT_WINRM_USERNAME", "vagrant")
|
|
WINRM_PASSWORD = ENV.fetch("COVENANT_WINRM_PASSWORD", "vagrant")
|
|
HYPERV_SWITCH = ENV.fetch("COVENANT_HYPERV_SWITCH", "Default Switch")
|
|
|
|
Vagrant.configure("2") do |config|
|
|
config.vm.box = WINDOWS_BOX
|
|
if WINDOWS_BOX_VERSION && !WINDOWS_BOX_VERSION.empty?
|
|
config.vm.box_version = WINDOWS_BOX_VERSION
|
|
end
|
|
|
|
config.vm.hostname = VM_NAME
|
|
config.vm.guest = :windows
|
|
config.vm.communicator = "winrm"
|
|
config.vm.boot_timeout = ENV.fetch("COVENANT_BOOT_TIMEOUT", "1800").to_i
|
|
config.vm.graceful_halt_timeout = 180
|
|
config.vm.box_check_update = false
|
|
config.vm.network "public_network", bridge: HYPERV_SWITCH
|
|
config.vm.synced_folder ".", "/vagrant", disabled: true
|
|
|
|
config.winrm.username = WINRM_USERNAME
|
|
config.winrm.password = WINRM_PASSWORD
|
|
config.winrm.retry_limit = 60
|
|
config.winrm.retry_delay = 10
|
|
config.winrm.timeout = 1800
|
|
|
|
config.vm.provider "hyperv" do |h|
|
|
h.vmname = VM_NAME
|
|
h.memory = VM_MEMORY.to_i
|
|
h.cpus = VM_CPUS.to_i
|
|
end
|
|
end
|