Bug 1206615
| Summary: | Kickstart template on rhel5 includes --device=MAC | ||||||
|---|---|---|---|---|---|---|---|
| Product: | Red Hat Satellite | Reporter: | Justin Sherrill <jsherril> | ||||
| Component: | Provisioning | Assignee: | Justin Sherrill <jsherril> | ||||
| Status: | CLOSED CURRENTRELEASE | QA Contact: | Og Maciel <omaciel> | ||||
| Severity: | high | Docs Contact: | |||||
| Priority: | unspecified | ||||||
| Version: | 6.1.0 | CC: | bbuckingham, bkearney, cwelton, jsherril, omaciel, tkolhar | ||||
| Target Milestone: | Unspecified | Keywords: | Triaged | ||||
| Target Release: | Unused | ||||||
| Hardware: | Unspecified | ||||||
| OS: | Unspecified | ||||||
| URL: | http://projects.theforeman.org/issues/10614 | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | Doc Type: | Bug Fix | |||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2015-08-12 14:02:14 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: | |||||
| Embargoed: | |||||||
| Attachments: |
|
||||||
This was resolved as part of https://bugzilla.redhat.com/show_bug.cgi?id=1186321 hi please provide verification steps thanks Tazim, To test you could either: 1. Examine the Satellite kickstart templates and verify that --device= is not included on the network line or (preferably) 2. Attempt to sync and provision a rhel5 server following the normal provisioning methods. Created attachment 1025355 [details]
cookies
FAILEDQA:
# rpm -qa | grep foreman
foreman-1.7.2.21-1.el7sat.noarch
ruby193-rubygem-foreman_discovery-2.0.0.13-1.el7sat.noarch
foreman-libvirt-1.7.2.21-1.el7sat.noarch
ruby193-rubygem-foreman_gutterball-0.0.1.9-1.el7sat.noarch
foreman-postgresql-1.7.2.21-1.el7sat.noarch
ruby193-rubygem-foreman_bootdisk-4.0.2.13-1.el7sat.noarch
dell-pem710-01.rhts.eng.bos.redhat.com-foreman-proxy-client-1.0-1.noarch
foreman-ovirt-1.7.2.21-1.el7sat.noarch
rubygem-hammer_cli_foreman-0.1.4.11-1.el7sat.noarch
foreman-selinux-1.7.2.13-1.el7sat.noarch
foreman-gce-1.7.2.21-1.el7sat.noarch
ruby193-rubygem-foreman-redhat_access-0.1.0-1.el7sat.noarch
ruby193-rubygem-foreman-tasks-0.6.12.5-1.el7sat.noarch
rubygem-hammer_cli_foreman_tasks-0.0.3.4-1.el7sat.noarch
rubygem-hammer_cli_foreman_docker-0.0.3.6-1.el7sat.noarch
ruby193-rubygem-foreman_docker-1.2.0.12-1.el7sat.noarch
ruby193-rubygem-foreman_hooks-0.3.7-2.el7sat.noarch
rubygem-hammer_cli_foreman_bootdisk-0.1.2.7-1.el7sat.noarch
foreman-proxy-1.7.2.4-1.el7sat.noarch
dell-pem710-01.rhts.eng.bos.redhat.com-foreman-client-1.0-1.noarch
dell-pem710-01.rhts.eng.bos.redhat.com-foreman-proxy-1.0-2.noarch
foreman-vmware-1.7.2.21-1.el7sat.noarch
rubygem-hammer_cli_foreman_discovery-0.0.1.10-1.el7sat.noarch
foreman-compute-1.7.2.21-1.el7sat.noarch
foreman-debug-1.7.2.21-1.el7sat.noarch
steps
In Satellite kickstart template
network --bootproto <%= dhcp ? 'dhcp' : "static --ip=#{@host.ip} --netmask=#{subnet.mask} --gateway=#{subnet.gateway} --nameserver=#{[subnet.dns_primary, subnet.dns_secondary].select(&:present?).join(',')}" %> --device=<%= @host.mac -%> --hostname <%= @host %>
rootpw --iscrypted <%= root_pass %>
--device= is included on the network line
Actually it looks like the foreman-templates do now have a --device=mac option, although in 1.7 they didn't. It looks like this was introduced in c0fe869d28f3a79ba65bc7d433c15c9d548b0baa in upstream foreman and that was brought into katello at some point. Created redmine issue http://projects.theforeman.org/issues/10614 from this bug FAILEDQA:
# rpm -qa | grep foreman
foreman-compute-1.7.2.26-1.el6_6sat.noarch
ruby193-rubygem-foreman-redhat_access-0.1.0-1.el6_6sat.noarch
rubygem-hammer_cli_foreman-0.1.4.13-1.el6_6sat.noarch
foreman-vmware-1.7.2.26-1.el6_6sat.noarch
ruby193-rubygem-foreman_bootdisk-4.0.2.13-1.el6_6sat.noarch
ruby193-rubygem-foreman_gutterball-0.0.1.9-1.el6_6sat.noarch
foreman-postgresql-1.7.2.26-1.el6_6sat.noarch
foreman-libvirt-1.7.2.26-1.el6_6sat.noarch
ruby193-rubygem-foreman-tasks-0.6.12.7-1.el6_6sat.noarch
rubygem-hammer_cli_foreman_bootdisk-0.1.2.7-1.el6_6sat.noarch
rubygem-hammer_cli_foreman_docker-0.0.3.6-1.el6_6sat.noarch
foreman-selinux-1.7.2.13-1.el6_6sat.noarch
foreman-debug-1.7.2.26-1.el6_6sat.noarch
foreman-ovirt-1.7.2.26-1.el6_6sat.noarch
foreman-gce-1.7.2.26-1.el6_6sat.noarch
ruby193-rubygem-foreman_discovery-2.0.0.15-1.el6_6sat.noarch
foreman-proxy-1.7.2.5-1.el6_6sat.noarch
rubygem-hammer_cli_foreman_tasks-0.0.3.4-1.el6_6sat.noarch
intel-s3e3432-01.rhts.eng.bos.redhat.com-foreman-proxy-client-1.0-1.noarch
ruby193-rubygem-foreman_docker-1.2.0.14-1.el6_6sat.noarch
intel-s3e3432-01.rhts.eng.bos.redhat.com-foreman-client-1.0-1.noarch
intel-s3e3432-01.rhts.eng.bos.redhat.com-foreman-proxy-1.0-1.noarch
foreman-1.7.2.26-1.el6_6sat.noarch
ruby193-rubygem-foreman_hooks-0.3.7-2.el6_6sat.noarch
rubygem-hammer_cli_foreman_discovery-0.0.1.10-1.el6_6sat.noarch
steps:
network --bootproto <%= dhcp ? 'dhcp' : "static --ip=#{@host.ip} --netmask=#{subnet.mask} --gateway=#{subnet.gateway} --nameserver=#{[subnet.dns_primary, subnet.dns_secondary].select(&:present?).join(',')}" %> --hostname <%= @host %><%= os_major >= 6 ? " --device=#{@host.mac}" : '' -%>
--device= is included on the network line
Tazim, Did you actually test a rendered kickstart? Or just look at the template? The 'fix' was to update the template to only render the --device part for rhel 6 and higher. -Justin Hi,
I had rendered a kickstart template
for example i logged in to sat6 -> Provisioning template
then under the template render I checked --device part
does that makes sense ?
Thanks and Regards,
Tazim
Tazim, Are you sure you were testing an el5 provisioning? That is an RHEL 5 operating system was selected? When I do it on rhel 5: network --bootproto dhcp --hostname zoom.example.com When i do it for rhel 6: network --bootproto dhcp --hostname testhost.example.com --device=3c:97:0e:e9:27:09 For a provisioned RHEL 5.11 x86_64 system the template shows: network --bootproto dhcp --hostname schemp-5-11-large.xxx.yyy.com For a provisioned RHEL 7.2 x86_64 system the template shows: network --bootproto dhcp --hostname curly-7-1.xxx.yyy.com --device=52:54:00:d1:04:b1 This is now verified on latest version of Satellite 6.1.0 SNAP 7 Compose 2 This bug is slated to be released with Satellite 6.1. This bug was fixed in version 6.1.1 of Satellite which was released on 12 August, 2015. |
Description of problem: The Satellite Kickstart Default provisioning template will render the following: network --bootproto dhcp --device=52:54:00:35:17:60 --hostname moe-59-64.lexample.com However rhel5 does not seem to support specifying the mac address with --device, only rhle6 and newer. This causes rhel5 provisioning to fail with an error "The Following network interface <MAC> does not exist" Version-Release number of selected component (if applicable): katello-2.2.0.8-1.el7sat.noarch katello-ca-consumer-ibm-x3250m4-06.lab.eng.rdu2.redhat.com-1.0-1.noarch katello-certs-tools-2.2.1-1.el7sat.noarch katello-common-2.2.0.8-1.el7sat.noarch katello-debug-2.2.0.8-1.el7sat.noarch katello-default-ca-1.0-1.noarch katello-installer-2.3.5-1.el7sat.noarch katello-installer-base-2.3.5-1.el7sat.noarch katello-server-ca-1.0-1.noarch The relevant line form the snippet: network --bootproto <%= dhcp ? 'dhcp' : "static --ip=#{@host.ip} --netmask=#{subnet.mask} --gateway=#{subnet.gateway} --nameserver=#{[subnet.dns_primary, subnet.dns_secondary].select(&:present?).join(',')}" %> --device=<%= @host.mac -%> --hostname <%= @host %> How reproducible: Always Steps to Reproduce: 1. Attempt to provision a rhel5 machine Actual results: Fails with error "The Following network interface <MAC> does not exist" Expected results: Successful provision Additional info: The foreman kickstart default for rhel does not seem to have the same networking line (and does not include a --device reference), but I'm not sure the history behind this.