Commit 4f3f0d4b by Matty Committed by Daniel Lezcano

lxc-fedora fixes

Howdy, I was playing around with LXC containers this past weekend, and noticed a couple of issues with the lxc-fedora script: #1: Line 96 should be ${ROOTFS}/etc/sysconfig/network instead of ${ROOTFS}/sysconfig/network #2 Line 249 contains a reference to $PKG, which isn't used in the program. I adjusted the variable to point to the correct package, and use this in the calls to yumdownloader: PKG="${DISTRO}-release.noarch.rpm" ..... yumdownloader --destdir="${CACHE}/partial" "${PKG}" #3 The $CACHE/partial path is escaped unnecessarily: RPM="rpm --root \"${CACHE}/partial\"" #4 The program assumes yumdownloader will work, which isn't always the case. I added an if statement to check the return code: echo "Downloading distribution release file ${PKG}" yumdownloader --destdir="${CACHE}/partial" "${PKG}" RESULT=$? if [ "${RESULT}" != "0" ]; then echo "Enable to download the distribution release file" exit 1 fi #5 The package name passed to yumdownloader is incorrect: yumdownloader --destdir="${CACHE}/partial" "${DISTRO}-release.noarch.rpm" On Fedora 10 and 11, this evaluates to: fedora-release.noarch.rpm When we need it to evaluate to: fedora-{RELEASE_VER}.release.noarch This is fixed in the PKG variable listed above. A patch that addresses these issues is attached. Thanks, - Ryan Signed-off-by: 's avatarMatty <matty91@gmail.com> Signed-off-by: 's avatarDaniel Lezcano <dlezcano@fr.ibm.com>
parent 1ea6db29
...@@ -93,7 +93,7 @@ EOF ...@@ -93,7 +93,7 @@ EOF
# custom hostname # custom hostname
write_distro_hostname() { write_distro_hostname() {
cat <<EOF > ${ROOTFS}/sysconfig/network cat <<EOF > ${ROOTFS}/etc/sysconfig/network
NETWORKING=yes NETWORKING=yes
HOSTNAME=${UTSNAME} HOSTNAME=${UTSNAME}
EOF EOF
...@@ -246,14 +246,23 @@ create() { ...@@ -246,14 +246,23 @@ create() {
'/^Release/ { release = $2 } '/^Release/ { release = $2 }
/^Version/ { version = $2 } /^Version/ { version = $2 }
END { print version "-" release }')" END { print version "-" release }')"
PKG="${DISTRO}-release.noarch.rpm"
RPM="rpm --root \"${CACHE}/partial\"" PKG="${DISTRO}-release-${RELEASE}.noarch"
RPM="rpm --root ${CACHE}/partial"
echo "Initializing RPM cache ..." echo "Initializing RPM cache ..."
${RPM} --initdb ${RPM} --initdb
echo "Downloading ${DISTRO} Release ${RELEASE} description ..." echo "Downloading distribution release file ${PKG}"
yumdownloader --destdir="${CACHE}/partial" "${DISTRO}-release.noarch.rpm" && \ yumdownloader --destdir="${CACHE}/partial" "${PKG}"
${RPM} --nodeps -ihv "${CACHE}/partial/${DISTRO}-release*.noarch.rpm" RESULT=$?
if [ "${RESULT}" != "0" ]; then
echo "Enable to download the distribution release file"
exit 1
fi
${RPM} --nodeps -ihv "${CACHE}/partial/${PKG}.rpm"
echo "Downloading ${DISTRO} minimal ..." echo "Downloading ${DISTRO} minimal ..."
yum --installroot="${CACHE}/partial" -y groupinstall Base yum --installroot="${CACHE}/partial" -y groupinstall Base
RESULT=$? RESULT=$?
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment