From 36851e50a4b516733522da4ce739485c45c9c69b Mon Sep 17 00:00:00 2001
From: Alexander Olofsson <alexander.olofsson@liu.se>
Date: Thu, 4 Apr 2019 13:44:08 +0200
Subject: [PATCH] Fix pxe issues with modern Foreman

---
 app/models/concerns/foreman_wds/host_extensions.rb | 8 ++++++++
 app/models/concerns/foreman_wds/nic_extensions.rb  | 4 +++-
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/app/models/concerns/foreman_wds/host_extensions.rb b/app/models/concerns/foreman_wds/host_extensions.rb
index b0a5220..6249c5c 100644
--- a/app/models/concerns/foreman_wds/host_extensions.rb
+++ b/app/models/concerns/foreman_wds/host_extensions.rb
@@ -41,11 +41,13 @@ module ForemanWds
 
     def capabilities
       return super + [:wds] if compute_resource && (os.nil? || os.family == 'Windows')
+
       super
     end
 
     def bare_metal_capabilities
       return super + [:wds] if os.nil? || os.family == 'Windows'
+
       super
     end
 
@@ -57,6 +59,12 @@ module ForemanWds
       provision_method == 'wds'
     end
 
+    def pxe_build?
+      return true if wds_build?
+
+      super
+    end
+
     def wds?
       managed? && wds_build? && SETTINGS[:unattended]
     end
diff --git a/app/models/concerns/foreman_wds/nic_extensions.rb b/app/models/concerns/foreman_wds/nic_extensions.rb
index 040402b..5487ddf 100644
--- a/app/models/concerns/foreman_wds/nic_extensions.rb
+++ b/app/models/concerns/foreman_wds/nic_extensions.rb
@@ -10,7 +10,9 @@ module ForemanWds
     def boot_server
       return super if host.nil? || !host.wds? || host.wds_facet.nil?
 
-      host.wds_server.next_server_ip if host.build? # TODO: Support choosing local boot method
+      return host.wds_server.next_server_ip if host.build? # TODO: Support choosing local boot method
+
+      super
     end
 
     def dhcp_records
-- 
GitLab