72 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
		
		
			
		
	
	
			72 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
|   | ENV['VAGRANT_NO_PARALLEL'] = 'yes' | ||
|  | 
 | ||
|  | # Returns true if `GUI` environment variable is set to a non-empty value. | ||
|  | # Defaults to false | ||
|  | def worker_gui_enabled? | ||
|  |   ENV.fetch('VAGRANT_WORKER_GUI', '').empty? | ||
|  | end | ||
|  | 
 | ||
|  | Vagrant.configure('2') do |config| | ||
|  | 
 | ||
|  |   config.vm.define :provisioner do |provisioner| | ||
|  |     provisioner.vm.box = 'generic/ubuntu1804' | ||
|  |     provisioner.vm.hostname = 'provisioner' | ||
|  |     provisioner.vm.synced_folder './../../', '/vagrant' | ||
|  |     provisioner.vm.provision :shell, path: './scripts/tinkerbell.sh' | ||
|  | 
 | ||
|  |     provisioner.vm.network :private_network, | ||
|  |                         virtualbox__intnet: "tink_network", | ||
|  |                         libvirt__dhcp_enabled: false, | ||
|  |                         libvirt__forward_mode: 'none', | ||
|  |                         auto_config: false | ||
|  | 
 | ||
|  |     provisioner.vm.network "forwarded_port", guest: 42113, host: 42113
 | ||
|  |     provisioner.vm.network "forwarded_port", guest: 42114, host: 42114
 | ||
|  | 
 | ||
|  | 
 | ||
|  |     provisioner.vm.provider :libvirt do |lv, override| | ||
|  |       lv.memory = 2*1024
 | ||
|  |       lv.cpus = 2
 | ||
|  |       lv.cpu_mode = 'host-passthrough' | ||
|  |     end | ||
|  | 
 | ||
|  |     provisioner.vm.provider :virtualbox do |vb, override| | ||
|  |       vb.memory = 2*1024
 | ||
|  |       vb.cpus = 2
 | ||
|  |     end | ||
|  |   end | ||
|  | 
 | ||
|  |   config.vm.define "worker" do |worker| | ||
|  |     worker.vm.box = nil | ||
|  |     worker.vm.network :private_network, | ||
|  |                       mac: "080027000001", | ||
|  |                       virtualbox__intnet: "tink_network", | ||
|  |                       libvirt__dhcp_enabled: false, | ||
|  |                       libvirt__forward_mode: 'none', | ||
|  |                       auto_config: false | ||
|  | 
 | ||
|  |     worker.vm.provider :libvirt do |lv| | ||
|  |       lv.memory = 4*1024
 | ||
|  |       lv.cpus = 1
 | ||
|  |       lv.boot 'network' | ||
|  |       lv.mgmt_attach = false | ||
|  |     end | ||
|  | 
 | ||
|  |     worker.vm.provider :virtualbox do |vb, worker| | ||
|  |       worker.vm.box = 'generic/alpine38' | ||
|  |       vb.memory = 4*1024
 | ||
|  |       vb.cpus = 1
 | ||
|  |       vb.gui = worker_gui_enabled? | ||
|  |       vb.customize [ | ||
|  |         'modifyvm', :id, | ||
|  |         '--nic1', 'none', | ||
|  |         '--boot1', 'net', | ||
|  |         '--boot2', 'none', | ||
|  |         '--boot3', 'none', | ||
|  |         '--boot4', 'none', | ||
|  |         '--macaddress1', '080027000001' | ||
|  |       ] | ||
|  |     end | ||
|  |   end | ||
|  | end |