Fixed EPEL RPM URL and lowered EPEL repository priority
This commit is contained in:
@@ -103,21 +103,39 @@ def serverprep():
|
||||
|
||||
# install epel if on rhel and epel is configured
|
||||
if controller.CONF["CONFIG_USE_EPEL"] == 'y':
|
||||
server.append("grep 'Red Hat Enterprise Linux' /etc/redhat-release && ( rpm -q epel-release || \
|
||||
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-7.noarch.rpm ) || echo -n ''")
|
||||
server.append("mkdir -p %s"%basedefs.PUPPET_MANIFEST_DIR)
|
||||
server.append("export EPEL_RPM_URL=\"http://download.fedoraproject.org/pub/epel/6/"
|
||||
"$([ `uname -i` = 'x86_64' ] && echo 'x86_64' || echo 'i386')"
|
||||
"/epel-release-6-8.noarch.rpm\"")
|
||||
server.append("grep 'Red Hat Enterprise Linux' /etc/redhat-release && "
|
||||
"( rpm -q epel-release || rpm -Uvh $EPEL_RPM_URL ) || echo -n ''")
|
||||
|
||||
server.append("mkdir -p %s" % basedefs.PUPPET_MANIFEST_DIR)
|
||||
|
||||
# lower priority of EPEL repository
|
||||
# XXX: If somebody knows how to do this using sed, feel free to fix it
|
||||
server.append("rpm -q epel-release && yum install -y yum-plugin-priorities || true")
|
||||
subs_cmd = ('rpm -q epel-release && python -c \'import re;'
|
||||
'f1 = open("%(repo)s"); c1 = f1.read();'
|
||||
'c2 = re.sub("enabled=1", "enabled=1\npriority=%(priority)s", c1);'
|
||||
'f2 = open("%(repo)s", "w"); f2.write(c2);'
|
||||
'f1.close(); f2.close()\' || true')
|
||||
server.append(subs_cmd % {"repo": "/etc/yum.repos.d/epel.repo",
|
||||
"priority": 50})
|
||||
server.append(subs_cmd % {"repo": "/etc/yum.repos.d/redhat.repo",
|
||||
"priority": 1})
|
||||
|
||||
# Add yum repositories if configured
|
||||
CONFIG_REPO = controller.CONF["CONFIG_REPO"].strip()
|
||||
if CONFIG_REPO:
|
||||
for i, url in enumerate(CONFIG_REPO.split(',')):
|
||||
reponame = 'packstack_%d'%i
|
||||
server.append('echo "[%s]\nname=%s\nbaseurl=%s\nenabled=1\ngpgcheck=0" > /etc/yum.repos.d/%s.repo'%(reponame, reponame, url, reponame))
|
||||
reponame = 'packstack_%d' % i
|
||||
server.append('echo "[%s]\nname=%s\nbaseurl=%s\nenabled=1\npriority=1\ngpgcheck=0"'
|
||||
' > /etc/yum.repos.d/%s.repo' % (reponame, reponame, url, reponame))
|
||||
|
||||
# Subscribe to Red Hat Repositories if configured
|
||||
RH_USERNAME = controller.CONF["CONFIG_RH_USERNAME"].strip()
|
||||
if RH_USERNAME:
|
||||
server.append("subscription-manager register --username=%s --password=%s --autosubscribe || true"%(RH_USERNAME, controller.CONF["CONFIG_RH_PASSWORD"].strip()))
|
||||
server.append("subscription-manager register --username=%s --password=%s --autosubscribe || true" % (RH_USERNAME, controller.CONF["CONFIG_RH_PASSWORD"].strip()))
|
||||
server.append("subscription-manager list --consumed | grep -i openstack || "
|
||||
"subscription-manager subscribe --pool $(subscription-manager list --available | grep -e 'Red Hat OpenStack' -m 1 -A 2 | grep 'Pool Id' | awk '{print $3}')")
|
||||
server.append("yum clean all")
|
||||
|
||||
Reference in New Issue
Block a user