Bug 1302994

Summary: [RFE] Additional macro support in foreman to install the right support software
Product: Red Hat Satellite Reporter: Kamudini Gazdikova <kshirsal>
Component: Provisioning TemplatesAssignee: Katello Bug Bin <katello-bugs>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 6.1.5CC: dmatoule, smeyer, tstrachota
Target Milestone: UnspecifiedKeywords: FutureFeature
Target Release: Unused   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-09-04 19:11:35 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Kamudini Gazdikova 2016-01-29 09:08:01 UTC
Description of problem:

- Customer is attempting to write a Finish script where it detects which hardware platform the system is being provisioned on (in his case VMware and bare metal on HP ProLiant ) in order to install the right support software (VMware Tools vs ProLiant Support Pack) 


Version-Release number of selected component (if applicable)

Red Hat Satellite 6.1.5


Actual results:
No such supported Marco currently.

Expected results:
There should be marco defined for foreman to detect which hardware platform the system is being provisioned on


Additional info:
Checked in Foreman: http://projects.theforeman.org/projects/foreman/wiki/templatewriting there is no such supported Marco.

Comment 3 Tomas Strachota 2017-08-13 20:59:02 UTC
Created redmine issue http://projects.theforeman.org/issues/20572 from this bug

Comment 4 Bryan Kearney 2018-09-04 18:59:35 UTC
Thank you for your interest in Satellite 6. We have evaluated this request, and we do not expect this to be implemented in the product in the foreseeable future. We are therefore closing this out as WONTFIX. If you have any concerns about this, please feel free to contact Rich Jerrido or Bryan Kearney. Thank you.

Comment 5 Bryan Kearney 2018-09-04 19:11:35 UTC
Thank you for your interest in Satellite 6. We have evaluated this request, and we do not expect this to be implemented in the product in the foreseeable future. We are therefore closing this out as WONTFIX. If you have any concerns about this, please feel free to contact Rich Jerrido or Bryan Kearney. Thank you.

Comment 6 Dominik Matoulek 2021-10-01 20:09:36 UTC
I've closed the upstream bug because there is macro with the desired behavior. This macro is called "provider" and it's at Host::Managed object.

So if have a @host that is running at Libvirt resource, you can call "@host.provider" and it returns "Libvirt". So with this macro, we can prepare simple if condition for desired case:

<% case @host.provider %>
<% when "BareMetal" %>
  echo "Host is running at own BareMetal hardware"
<% when "VMware" %>
  echo "Host is virtualized by VMware"
<% end %>

This macro is at Host::Managed class since that class was created (https://github.com/theforeman/foreman/blob/d7611b242760bffdd801a63dd4d3e63533ccfa52/app/models/host/managed.rb#L55). That means this macro is included in Foreman since version 1.2.0-RC1 and in Satellite since version 5.7.

Comment 7 Marek Hulan 2021-11-05 11:29:25 UTC
A small correction of the Satellite version - it's present from Satellite 6.0