Project

General

Profile

Download (2.38 KB) Statistics
| Branch: | Tag: | Revision:
<%#
kind: snippet
name: redhat_register
%>
# Red Hat Registration Snippet
#
# Usage, set these params:
# spacewalk_type = "site" (local Spacewalk/Satellite server)
# = "hosted" (RHN hosted)
# spacewalk_host = <hostname> (hostname of Spacewalk server, optional for
# RHN hosted)
# activation_key = <key> (activation key string)
#

<%
if @host.params["activation_key"]
type = @host.params["spacewalk_type"] || "hosted"
-%>
# Discovered Activation Key <%= @host.params["activation_key"] %>
rhn_activation_key="<%= @host.params["activation_key"] -%>"

<% if type == "site" -%>
satellite_hostname="<%= @host.params["spacewalk_host"] -%>"
rhn_cert_file="RHN-ORG-TRUSTED-SSL-CERT"
<% else -%>
satellite_hostname="<%= @host.params["spacewalk_host"] || "xmlrpc.rhn.redhat.com" -%>"
rhn_cert_file="RHNS-CA-CERT"
<% end -%>

echo "Registering to RHN Satellite at [$satellite_hostname]"
echo "Using Registration Key [$rhn_activation_key]"

<% if type == "site" -%>
# Obtain our RHN Satellite Certificate
echo "Obtaining RHN SSL certificate"
wget http://$satellite_hostname/pub/$rhn_cert_file -O /usr/share/rhn/$rhn_cert_file
<% end -%>

# Update our up2date configuration file
echo "Updating SSL CA Certificate to /usr/share/rhn/$rhn_cert_file"
sed -i -e "s|^sslCACert=.*$|sslCACert=/usr/share/rhn/$rhn_cert_file|" /etc/sysconfig/rhn/up2date

# Update our Satellite Hostname
echo "Updating Satellite Hostname to [$satellite_hostname]"
sed -i -e "s|^serverURL=.*$|serverURL=https://$satellite_hostname/XMLRPC|" /etc/sysconfig/rhn/up2date
sed -i -e "s|^noSSLServerURL=.*$|noSSLServerURL=https://$satellite_hostname/XMLRPC|" /etc/sysconfig/rhn/up2date

# Restart messagebus/HAL to try and prevent hardware detection errors in rhnreg_ks
echo "Restarting services..."
service messagebus restart
service hald restart

# Now, perform our registration
# (might get hardware errors here, due to dbus/messagebus lameness. These are safe to ignore.)
echo -n "Performing RHN Registration... "
rhnreg_ks --activationkey=$rhn_activation_key
echo "done."

# Check we registered
echo -n "Checking System Registration... "
if ! rhn_check; then
echo "FAILED"
echo " >> RHN Registration FAILED. Please Investigate. <<"
else
echo "registration successful."
fi
# Done!
<% else -%>
# Not registering - host.params["activation_key"] not found.
<% end -%>
# End Red Hat Registration Snippet
(4-4/4)