ac8514c089
This patch documents the 00-rhsm script as <= RHEL6 as it doesn't work with the latest release of Satellite. The Red Hat Network (RHN) method of registration is being phased out in favor of Red Hat Customer Portal and Satellite 6. The subscription-manager command line tool is the preferred method of registration. The registration of RHEL is required to enable repositories for software installation during image creation time. This element provides functionality for registering RHEL images during the image build process with diskimage-builder's disk-image-create script. The RHEL image will register itself with either the hosted Red Hat Customer Portal or Satellite to enable software installation from official repositories. After the end of the image creation process, the image will unregister itself so an entitlement will not be decremented from the account. Boot-time registration is supported through metadata. Please see the configuration in the README for more information. Change-Id: Ia9ef377cc4ed9595633888bfb248a1224e04b542
62 lines
2.2 KiB
Bash
Executable file
62 lines
2.2 KiB
Bash
Executable file
#!/bin/bash
|
|
# This script is for RHEL6 use only. For RHEL7, please see the readme for
|
|
# documentation on which scripts are used for registration and the variables
|
|
# needed to enable the registration process.
|
|
set -eu
|
|
set -o pipefail
|
|
|
|
export DIB_RHSM_USER=${DIB_RHSM_USER:-}
|
|
|
|
if [ -n "${DIB_RHSM_USER:-}" ] && [ -n "${DIB_RHSM_PASSWORD:-}" ] ; then
|
|
opts="--force"
|
|
if [[ -n "${DIB_SAT_KEY:-}" ]]; then
|
|
opts="$opts --activationkey ${DIB_SAT_KEY}"
|
|
else
|
|
opts="$opts --username ${DIB_RHSM_USER} --password ${DIB_RHSM_PASSWORD}"
|
|
fi
|
|
if [[ -n "${DIB_SAT_URL:-}" ]]; then
|
|
if [[ "${DIB_REG_TYPE:-}" == "rhn" ]]; then
|
|
opts="$opts --serverUrl ${DIB_SAT_URL}"
|
|
else
|
|
opts="$opts --serverurl ${DIB_SAT_URL} --sslCACert /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT"
|
|
fi
|
|
fi
|
|
if [[ -n "${DIB_SAT_CERT_RPM_URL:-}" ]]; then
|
|
yum install -y ${DIB_SAT_CERT_RPM_URL}
|
|
fi
|
|
if [[ "${DIB_REG_TYPE:-}" == "rhn" ]]; then
|
|
rhnreg_ks $opts --norhnsd
|
|
sleep 1
|
|
# optional channel required for diskimage-builder dependency
|
|
channels="-a -c rhel-x86_64-server-optional-6"
|
|
if [[ -n "${DIB_RHN_CHANNELS:-}" ]]; then
|
|
for chan in $DIB_RHN_CHANNELS; do
|
|
channels="$channels -a -c $chan"
|
|
done
|
|
fi
|
|
rhn-channel --user=$DIB_RHSM_USER --password=$DIB_RHSM_PASSWORD $channels
|
|
rhn-channel -l
|
|
else
|
|
subscription-manager register $opts
|
|
# wait a second to ensure consumer certificate is finished writing to disk
|
|
sleep 1
|
|
if [ -z ${DIB_RHSM_POOL:-} ]; then
|
|
subscription-manager attach --auto
|
|
else
|
|
subscription-manager attach --pool $DIB_RHSM_POOL
|
|
fi
|
|
# optional repo required for diskimage-builder dependency
|
|
if [ "$DISTRO_NAME" == "rhel7" ]; then
|
|
repos="--enable rhel-7-server-optional-rpms"
|
|
else
|
|
repos="--enable rhel-6-server-optional-rpms"
|
|
fi
|
|
if [[ -n "${DIB_RHSM_REPOS:-}" ]]; then
|
|
for repo in $DIB_RHSM_REPOS; do
|
|
repos="$repos --enable $repo"
|
|
done
|
|
fi
|
|
subscription-manager repos $repos
|
|
subscription-manager repos --list
|
|
fi
|
|
fi
|