diskimage-builder/elements/rhel/pre-install.d/00-rhsm
aweiteka ce14214a7a Support list of Red Hat channels and repos
When registering to RHN or RHSM a list of space-separated
channels or repositories may be provided. This allows control
over which packages are available to the system during build.
Note, the optional channel or repository is added by default
since diskimage-builder requires access to its packages. This
list is for additional channels or repos.

Change-Id: I9cf90d47ab1d09f5491f574132410438f9e294e3
2014-01-21 14:26:35 -05:00

40 lines
1.3 KiB
Bash
Executable File

#!/bin/bash
set -e
if [ -n "$DIB_RHSM_USER" ] && [ -n "$DIB_RHSM_PASSWORD" ]
then
opts="--force --username ${DIB_RHSM_USER} --password ${DIB_RHSM_PASSWORD}"
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
repos="--enable rhel-6-server-optional-rpms"
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