Fix satellite registration for http or https

If the satellite registration url was specified with https, the curl
command to detect the satellite version would not work as expected since
-L was not passed and you get redirected to https when testing the ping
api.

To additionally handle the case where https is specified, also use curl
directly with -k to download the configuration rpm instead of using rpm
with a url.

Fixes another bug with a missing $ in the reference to the
$satellite_version variable.

Change-Id: I984fdfc415eeeed4ef29cc8d0812e1b67545d6b1
This commit is contained in:
James Slagle 2016-03-22 17:26:42 -04:00
parent 7ac441f019
commit 5117011468

@ -98,10 +98,10 @@ fi
function detect_satellite_version {
ping_api=$REG_SAT_URL/katello/api/ping
if curl -k -s -D - -o /dev/null $ping_api | grep "200 OK"; then
if curl -L -k -s -D - -o /dev/null $ping_api | grep "200 OK"; then
echo Satellite 6 detected at $REG_SAT_URL
satellite_version=6
elif curl -k -s -D - -o /dev/null $REG_SAT_URL/rhn/Login.do | grep "200 OK"; then
elif curl -L -k -s -D - -o /dev/null $REG_SAT_URL/rhn/Login.do | grep "200 OK"; then
echo Satellite 5 detected at $REG_SAT_URL
satellite_version=5
else
@ -120,9 +120,10 @@ case "${REG_METHOD:-}" in
;;
satellite)
detect_satellite_version
if [ "satellite_version" = "6" ]; then
if [ "$satellite_version" = "6" ]; then
repos="$repos --enable ${satellite_repo}"
rpm -Uvh "$REG_SAT_URL/pub/katello-ca-consumer-latest.noarch.rpm" || true
curl -L -k -O "$REG_SAT_URL/pub/katello-ca-consumer-latest.noarch.rpm"
rpm -Uvh katello-ca-consumer-latest.noarch.rpm || true
subscription-manager register $opts
subscription-manager $repos
yum install -y katello-agent || true # needed for errata reporting to satellite6