| ... | ... |
@@ -24,7 +24,7 @@ Q: Then why selinux in enforcing mode? |
| 24 | 24 |
by packaging in "real" deployments. To remove additional protections |
| 25 | 25 |
that will be desired/required in production would be a step |
| 26 | 26 |
backward. |
| 27 |
-Q: But selinux is disabled in RHEL 6! |
|
| 27 |
+Q: But selinux is disabled in RHEL! |
|
| 28 | 28 |
A: Today it is, yes. That is a specific exception that certain |
| 29 | 29 |
DevStack contributors fought strongly against. The primary reason it |
| 30 | 30 |
was allowed was to support using RHEL6 as the Python 2.6 test |
| ... | ... |
@@ -70,11 +70,6 @@ Q: What about Fedora/RHEL/CentOS? |
| 70 | 70 |
Q: Are there any differences between Ubuntu and Fedora support? |
| 71 | 71 |
A: Neutron is not fully supported prior to Fedora 18 due lack of |
| 72 | 72 |
OpenVSwitch packages. |
| 73 |
-Q: How about RHEL 6? |
|
| 74 |
- A: RHEL 6 has Python 2.6 and many old modules packaged and is a |
|
| 75 |
- challenge to support. There are a number of specific RHEL6 |
|
| 76 |
- work-arounds in ``stack.sh`` to handle this. But the testing on py26 |
|
| 77 |
- is valuable so we do it... |
|
| 78 | 73 |
|
| 79 | 74 |
Operation and Configuration |
| 80 | 75 |
=========================== |
| 39 | 35 |
deleted file mode 100644 |
| ... | ... |
@@ -1,16 +0,0 @@ |
| 1 |
-diff -r b2efb7df637b discover.py |
|
| 2 |
-+++ b/discover.py Thu Nov 28 12:02:19 2013 +0000 |
|
| 3 |
-@@ -82,7 +82,11 @@ |
|
| 4 |
- """ |
|
| 5 |
- testMethodPrefix = 'test' |
|
| 6 |
- sortTestMethodsUsing = cmp |
|
| 7 |
-- suiteClass = unittest.TestSuite |
|
| 8 |
-+ try: |
|
| 9 |
-+ import unittest2 |
|
| 10 |
-+ suiteClass = unittest2.TestSuite |
|
| 11 |
-+ except ImportError: |
|
| 12 |
-+ suiteClass = unittest.TestSuite |
|
| 13 |
- _top_level_dir = None |
|
| 14 |
- |
|
| 15 |
- def loadTestsFromTestCase(self, testCaseClass): |
| ... | ... |
@@ -13,7 +13,6 @@ libxml2-devel |
| 13 | 13 |
libxslt-devel |
| 14 | 14 |
psmisc |
| 15 | 15 |
pylint |
| 16 |
-python-prettytable # dist:rhel6 [1] |
|
| 17 | 16 |
python-unittest2 |
| 18 | 17 |
python-virtualenv |
| 19 | 18 |
python-devel |
| ... | ... |
@@ -27,8 +26,3 @@ bc |
| 27 | 27 |
libyaml-devel |
| 28 | 28 |
gettext # used for compiling message catalogs |
| 29 | 29 |
net-tools |
| 30 |
- |
|
| 31 |
-# [1] : some of installed tools have unversioned dependencies on this, |
|
| 32 |
-# but others have versioned (<=0.7). So if a later version (0.7.1) |
|
| 33 |
-# gets installed in response to an unversioned dependency, it breaks. |
|
| 34 |
-# This pre-installs a compatible 0.6(ish) version from RHEL |
| ... | ... |
@@ -1,10 +1,10 @@ |
| 1 | 1 |
MySQL-python |
| 2 | 2 |
python-greenlet |
| 3 |
-libxslt-devel # dist:f20,f21 |
|
| 4 |
-python-lxml #dist:f19,f20,f21 |
|
| 5 |
-python-paste #dist:f19,f20,f21 |
|
| 6 |
-python-paste-deploy #dist:f19,f20,f21 |
|
| 7 |
-python-paste-script #dist:f19,f20,f21 |
|
| 3 |
+libxslt-devel |
|
| 4 |
+python-lxml |
|
| 5 |
+python-paste |
|
| 6 |
+python-paste-deploy |
|
| 7 |
+python-paste-script |
|
| 8 | 8 |
python-routes |
| 9 | 9 |
python-sqlalchemy |
| 10 | 10 |
python-webob |
| ... | ... |
@@ -12,9 +12,8 @@ openvswitch # NOPRIME |
| 12 | 12 |
python-eventlet |
| 13 | 13 |
python-greenlet |
| 14 | 14 |
python-iso8601 |
| 15 |
-#rhel6 gets via pip |
|
| 16 |
-python-paste # dist:f19,f20,f21,rhel7 |
|
| 17 |
-python-paste-deploy # dist:f19,f20,f21,rhel7 |
|
| 15 |
+python-paste |
|
| 16 |
+python-paste-deploy |
|
| 18 | 17 |
python-qpid # NOPRIME |
| 19 | 18 |
python-routes |
| 20 | 19 |
python-sqlalchemy |
| ... | ... |
@@ -29,11 +29,9 @@ python-iso8601 |
| 29 | 29 |
python-lockfile |
| 30 | 30 |
python-migrate |
| 31 | 31 |
python-mox |
| 32 |
-python-paramiko # dist:f19,f20,f21,rhel7 |
|
| 33 |
-# ^ on RHEL6, brings in python-crypto which conflicts with version from |
|
| 34 |
-# pip we need |
|
| 35 |
-python-paste # dist:f19,f20,f21,rhel7 |
|
| 36 |
-python-paste-deploy # dist:f19,f20,f21,rhel7 |
|
| 32 |
+python-paramiko |
|
| 33 |
+python-paste |
|
| 34 |
+python-paste-deploy |
|
| 37 | 35 |
python-qpid # NOPRIME |
| 38 | 36 |
python-routes |
| 39 | 37 |
python-sqlalchemy |
| ... | ... |
@@ -303,18 +303,6 @@ function configure_cinder {
|
| 303 | 303 |
configure_cinder_driver |
| 304 | 304 |
fi |
| 305 | 305 |
|
| 306 |
- if is_fedora && [[ $DISTRO =~ (rhel6) ]]; then |
|
| 307 |
- # Cinder clones are slightly larger due to some extra |
|
| 308 |
- # metadata. RHEL6 will not allow auto-extending of LV's |
|
| 309 |
- # without this, leading to clones giving hard-to-track disk |
|
| 310 |
- # I/O errors. |
|
| 311 |
- # see https://bugzilla.redhat.com/show_bug.cgi?id=975052 |
|
| 312 |
- sudo sed -i~ \ |
|
| 313 |
- -e 's/snapshot_autoextend_threshold =.*/snapshot_autoextend_threshold = 80/' \ |
|
| 314 |
- -e 's/snapshot_autoextend_percent =.*/snapshot_autoextend_percent = 20/' \ |
|
| 315 |
- /etc/lvm/lvm.conf |
|
| 316 |
- fi |
|
| 317 |
- |
|
| 318 | 306 |
iniset $CINDER_CONF DEFAULT osapi_volume_workers "$API_WORKERS" |
| 319 | 307 |
|
| 320 | 308 |
iniset $CINDER_CONF DEFAULT glance_api_servers "${GLANCE_SERVICE_PROTOCOL}://${GLANCE_HOSTPORT}"
|
| ... | ... |
@@ -463,12 +451,8 @@ function start_cinder {
|
| 463 | 463 |
if is_ubuntu; then |
| 464 | 464 |
sudo service tgt restart |
| 465 | 465 |
elif is_fedora; then |
| 466 |
- if [[ $DISTRO =~ (rhel6) ]]; then |
|
| 467 |
- sudo /sbin/service tgtd restart |
|
| 468 |
- else |
|
| 469 |
- # bypass redirection to systemctl during restart |
|
| 470 |
- sudo /sbin/service --skip-redirect tgtd restart |
|
| 471 |
- fi |
|
| 466 |
+ # bypass redirection to systemctl during restart |
|
| 467 |
+ sudo /sbin/service --skip-redirect tgtd restart |
|
| 472 | 468 |
elif is_suse; then |
| 473 | 469 |
restart_service tgtd |
| 474 | 470 |
else |
| ... | ... |
@@ -17,11 +17,7 @@ register_database mysql |
| 17 | 17 |
# Linux distros, thank you for being incredibly consistent |
| 18 | 18 |
MYSQL=mysql |
| 19 | 19 |
if is_fedora; then |
| 20 |
- if [[ $DISTRO =~ (rhel6) ]]; then |
|
| 21 |
- MYSQL=mysqld |
|
| 22 |
- else |
|
| 23 |
- MYSQL=mariadb |
|
| 24 |
- fi |
|
| 20 |
+ MYSQL=mariadb |
|
| 25 | 21 |
fi |
| 26 | 22 |
|
| 27 | 23 |
# Functions |
| ... | ... |
@@ -38,15 +34,9 @@ function cleanup_database_mysql {
|
| 38 | 38 |
sudo rm -rf /etc/mysql |
| 39 | 39 |
return |
| 40 | 40 |
elif is_fedora; then |
| 41 |
- if [[ $DISTRO =~ (rhel6) ]]; then |
|
| 42 |
- stop_service mysqld |
|
| 43 |
- uninstall_package mysql-server |
|
| 44 |
- sudo rm -rf /var/lib/mysql |
|
| 45 |
- else |
|
| 46 |
- stop_service mariadb |
|
| 47 |
- uninstall_package mariadb-server |
|
| 48 |
- sudo rm -rf /var/lib/mysql |
|
| 49 |
- fi |
|
| 41 |
+ stop_service mariadb |
|
| 42 |
+ uninstall_package mariadb-server |
|
| 43 |
+ sudo rm -rf /var/lib/mysql |
|
| 50 | 44 |
elif is_suse; then |
| 51 | 45 |
stop_service mysql |
| 52 | 46 |
uninstall_package mysql-community-server |
| ... | ... |
@@ -70,11 +60,7 @@ function configure_database_mysql {
|
| 70 | 70 |
my_conf=/etc/mysql/my.cnf |
| 71 | 71 |
mysql=mysql |
| 72 | 72 |
elif is_fedora; then |
| 73 |
- if [[ $DISTRO =~ (rhel6) ]]; then |
|
| 74 |
- mysql=mysqld |
|
| 75 |
- else |
|
| 76 |
- mysql=mariadb |
|
| 77 |
- fi |
|
| 73 |
+ mysql=mariadb |
|
| 78 | 74 |
my_conf=/etc/my.cnf |
| 79 | 75 |
elif is_suse; then |
| 80 | 76 |
my_conf=/etc/my.cnf |
| ... | ... |
@@ -110,7 +96,7 @@ function configure_database_mysql {
|
| 110 | 110 |
|
| 111 | 111 |
if [[ "$DATABASE_QUERY_LOGGING" == "True" ]]; then |
| 112 | 112 |
echo_summary "Enabling MySQL query logging" |
| 113 |
- if is_fedora && ! [[ $DISTRO =~ (rhel6) ]]; then |
|
| 113 |
+ if is_fedora; then |
|
| 114 | 114 |
slow_log=/var/log/mariadb/mariadb-slow.log |
| 115 | 115 |
else |
| 116 | 116 |
slow_log=/var/log/mysql/mysql-slow.log |
| ... | ... |
@@ -158,11 +144,7 @@ EOF |
| 158 | 158 |
fi |
| 159 | 159 |
# Install mysql-server |
| 160 | 160 |
if is_fedora; then |
| 161 |
- if [[ $DISTRO =~ (rhel6) ]]; then |
|
| 162 |
- install_package mysql-server |
|
| 163 |
- else |
|
| 164 |
- install_package mariadb-server |
|
| 165 |
- fi |
|
| 161 |
+ install_package mariadb-server |
|
| 166 | 162 |
elif is_ubuntu; then |
| 167 | 163 |
install_package mysql-server |
| 168 | 164 |
elif is_suse; then |
| ... | ... |
@@ -49,11 +49,7 @@ function configure_database_postgresql {
|
| 49 | 49 |
pg_hba=/var/lib/pgsql/data/pg_hba.conf |
| 50 | 50 |
pg_conf=/var/lib/pgsql/data/postgresql.conf |
| 51 | 51 |
if ! sudo [ -e $pg_hba ]; then |
| 52 |
- if ! [[ $DISTRO =~ (rhel6) ]]; then |
|
| 53 |
- sudo postgresql-setup initdb |
|
| 54 |
- else |
|
| 55 |
- sudo service postgresql initdb |
|
| 56 |
- fi |
|
| 52 |
+ sudo postgresql-setup initdb |
|
| 57 | 53 |
fi |
| 58 | 54 |
elif is_ubuntu; then |
| 59 | 55 |
pg_dir=`find /etc/postgresql -name pg_hba.conf|xargs dirname` |
| ... | ... |
@@ -72,14 +72,6 @@ function _horizon_config_set {
|
| 72 | 72 |
# cleanup_horizon() - Remove residual data files, anything left over from previous |
| 73 | 73 |
# runs that a clean run would need to clean up |
| 74 | 74 |
function cleanup_horizon {
|
| 75 |
- if is_fedora && [[ $DISTRO =~ (rhel6) ]]; then |
|
| 76 |
- # If ``/usr/bin/node`` points into ``$DEST`` |
|
| 77 |
- # we installed it via ``install_nodejs`` |
|
| 78 |
- if [[ $(readlink -f /usr/bin/node) =~ ($DEST) ]]; then |
|
| 79 |
- sudo rm /usr/bin/node |
|
| 80 |
- fi |
|
| 81 |
- fi |
|
| 82 |
- |
|
| 83 | 75 |
local horizon_conf=$(apache_site_config_for horizon) |
| 84 | 76 |
sudo rm -f $horizon_conf |
| 85 | 77 |
} |
| ... | ... |
@@ -37,8 +37,7 @@ function install_libvirt {
|
| 37 | 37 |
|
| 38 | 38 |
# Note there is a difference between F20 rackspace cloud images |
| 39 | 39 |
# and HP images used in the gate; rackspace has firewalld but hp |
| 40 |
- # cloud doesn't. RHEL6 doesn't have firewalld either. So we |
|
| 41 |
- # don't care if it fails. |
|
| 40 |
+ # cloud doesn't. |
|
| 42 | 41 |
if is_fedora && is_package_installed firewalld; then |
| 43 | 42 |
sudo service firewalld restart || true |
| 44 | 43 |
fi |
| ... | ... |
@@ -68,34 +67,12 @@ EOF |
| 68 | 68 |
fi |
| 69 | 69 |
|
| 70 | 70 |
if is_fedora || is_suse; then |
| 71 |
- if is_fedora && [[ $DISTRO =~ (rhel6) || "$os_RELEASE" -le "17" ]]; then |
|
| 72 |
- cat <<EOF | sudo tee /etc/polkit-1/localauthority/50-local.d/50-libvirt-remote-access.pkla |
|
| 73 |
-[libvirt Management Access] |
|
| 74 |
-Identity=unix-group:$LIBVIRT_GROUP |
|
| 75 |
-Action=org.libvirt.unix.manage |
|
| 76 |
-ResultAny=yes |
|
| 77 |
-ResultInactive=yes |
|
| 78 |
-ResultActive=yes |
|
| 79 |
-EOF |
|
| 80 |
- elif is_suse && [[ $os_RELEASE = 12.2 || "$os_VENDOR" = "SUSE LINUX" ]]; then |
|
| 81 |
- # openSUSE < 12.3 or SLE |
|
| 82 |
- # Work around the fact that polkit-default-privs overrules pklas |
|
| 83 |
- # with 'unix-group:$group'. |
|
| 84 |
- cat <<EOF | sudo tee /etc/polkit-1/localauthority/50-local.d/50-libvirt-remote-access.pkla |
|
| 85 |
-[libvirt Management Access] |
|
| 86 |
-Identity=unix-user:$STACK_USER |
|
| 87 |
-Action=org.libvirt.unix.manage |
|
| 88 |
-ResultAny=yes |
|
| 89 |
-ResultInactive=yes |
|
| 90 |
-ResultActive=yes |
|
| 91 |
-EOF |
|
| 92 |
- else |
|
| 93 |
- # Starting with fedora 18 and opensuse-12.3 enable stack-user to |
|
| 94 |
- # virsh -c qemu:///system by creating a policy-kit rule for |
|
| 95 |
- # stack-user using the new Javascript syntax |
|
| 96 |
- rules_dir=/etc/polkit-1/rules.d |
|
| 97 |
- sudo mkdir -p $rules_dir |
|
| 98 |
- cat <<EOF | sudo tee $rules_dir/50-libvirt-$STACK_USER.rules |
|
| 71 |
+ # Starting with fedora 18 and opensuse-12.3 enable stack-user to |
|
| 72 |
+ # virsh -c qemu:///system by creating a policy-kit rule for |
|
| 73 |
+ # stack-user using the new Javascript syntax |
|
| 74 |
+ rules_dir=/etc/polkit-1/rules.d |
|
| 75 |
+ sudo mkdir -p $rules_dir |
|
| 76 |
+ cat <<EOF | sudo tee $rules_dir/50-libvirt-$STACK_USER.rules |
|
| 99 | 77 |
polkit.addRule(function(action, subject) {
|
| 100 | 78 |
if (action.id == 'org.libvirt.unix.manage' && |
| 101 | 79 |
subject.user == '$STACK_USER') {
|
| ... | ... |
@@ -103,8 +80,7 @@ polkit.addRule(function(action, subject) {
|
| 103 | 103 |
} |
| 104 | 104 |
}); |
| 105 | 105 |
EOF |
| 106 |
- unset rules_dir |
|
| 107 |
- fi |
|
| 106 |
+ unset rules_dir |
|
| 108 | 107 |
fi |
| 109 | 108 |
|
| 110 | 109 |
# The user that nova runs as needs to be member of **libvirtd** group otherwise |
| ... | ... |
@@ -152,7 +152,7 @@ source $TOP_DIR/stackrc |
| 152 | 152 |
|
| 153 | 153 |
# Warn users who aren't on an explicitly supported distro, but allow them to |
| 154 | 154 |
# override check and attempt installation with ``FORCE=yes ./stack`` |
| 155 |
-if [[ ! ${DISTRO} =~ (precise|trusty|7.0|wheezy|sid|testing|jessie|f20|f21|rhel6|rhel7) ]]; then
|
|
| 155 |
+if [[ ! ${DISTRO} =~ (precise|trusty|7.0|wheezy|sid|testing|jessie|f20|f21|rhel7) ]]; then
|
|
| 156 | 156 |
echo "WARNING: this script has not been tested on $DISTRO" |
| 157 | 157 |
if [[ "$FORCE" != "yes" ]]; then |
| 158 | 158 |
die $LINENO "If you wish to run this script anyway run with FORCE=yes" |
| ... | ... |
@@ -221,7 +221,7 @@ fi |
| 221 | 221 |
# Some distros need to add repos beyond the defaults provided by the vendor |
| 222 | 222 |
# to pick up required packages. |
| 223 | 223 |
|
| 224 |
-if is_fedora && [[ $DISTRO == "rhel6" || $DISTRO == "rhel7" ]]; then |
|
| 224 |
+if is_fedora && [[ $DISTRO == "rhel7" ]]; then |
|
| 225 | 225 |
# RHEL requires EPEL for many Open Stack dependencies |
| 226 | 226 |
|
| 227 | 227 |
# note we always remove and install latest -- some environments |
| ... | ... |
@@ -239,16 +239,10 @@ if is_fedora && [[ $DISTRO == "rhel6" || $DISTRO == "rhel7" ]]; then |
| 239 | 239 |
# $releasever directly in .repo file we create below. However |
| 240 | 240 |
# RHEL gives a $releasever of "6Server" which breaks the path; |
| 241 | 241 |
# see https://bugzilla.redhat.com/show_bug.cgi?id=1150759 |
| 242 |
- if [[ $DISTRO == "rhel7" ]]; then |
|
| 243 |
- epel_ver="7" |
|
| 244 |
- elif [[ $DISTRO == "rhel6" ]]; then |
|
| 245 |
- epel_ver="6" |
|
| 246 |
- fi |
|
| 247 |
- |
|
| 248 | 242 |
cat <<EOF | sudo tee /etc/yum.repos.d/epel-bootstrap.repo |
| 249 | 243 |
[epel-bootstrap] |
| 250 | 244 |
name=Bootstrap EPEL |
| 251 |
-mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=epel-$epel_ver&arch=\$basearch |
|
| 245 |
+mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=epel-7&arch=\$basearch |
|
| 252 | 246 |
failovermethod=priority |
| 253 | 247 |
enabled=0 |
| 254 | 248 |
gpgcheck=0 |
| ... | ... |
@@ -261,22 +255,10 @@ EOF |
| 261 | 261 |
|
| 262 | 262 |
# ... and also optional to be enabled |
| 263 | 263 |
is_package_installed yum-utils || install_package yum-utils |
| 264 |
- if [[ $DISTRO == "rhel7" ]]; then |
|
| 265 |
- OPTIONAL_REPO=rhel-7-server-optional-rpms |
|
| 266 |
- elif [[ $DISTRO == "rhel6" ]]; then |
|
| 267 |
- OPTIONAL_REPO=rhel-6-server-optional-rpms |
|
| 268 |
- fi |
|
| 269 |
- sudo yum-config-manager --enable ${OPTIONAL_REPO}
|
|
| 270 |
- |
|
| 271 |
- # Installing Open vSwitch on RHEL requires enabling the RDO repo. |
|
| 272 |
- # Note no juno packages for rhel6 |
|
| 273 |
- if [[ $DISTRO == "rhel6" ]]; then |
|
| 274 |
- RHEL_RDO_REPO_RPM=${RHEL6_RDO_REPO_RPM:-"https://repos.fedorapeople.org/repos/openstack/openstack-icehouse/rdo-release-icehouse-4.noarch.rpm"}
|
|
| 275 |
- RHEL_RDO_REPO_ID=${RHEL6_RDO_REPO_ID:-"openstack-icehouse"}
|
|
| 276 |
- elif [[ $DISTRO == "rhel7" ]]; then |
|
| 277 |
- RHEL_RDO_REPO_RPM=${RHEL7_RDO_REPO_RPM:-"https://repos.fedorapeople.org/repos/openstack/openstack-juno/rdo-release-juno-1.noarch.rpm"}
|
|
| 278 |
- RHEL_RDO_REPO_ID=${RHEL7_RDO_REPO_ID:-"openstack-juno"}
|
|
| 279 |
- fi |
|
| 264 |
+ sudo yum-config-manager --enable rhel-7-server-optional-rpms |
|
| 265 |
+ |
|
| 266 |
+ RHEL_RDO_REPO_RPM=${RHEL7_RDO_REPO_RPM:-"https://repos.fedorapeople.org/repos/openstack/openstack-juno/rdo-release-juno-1.noarch.rpm"}
|
|
| 267 |
+ RHEL_RDO_REPO_ID=${RHEL7_RDO_REPO_ID:-"openstack-juno"}
|
|
| 280 | 268 |
|
| 281 | 269 |
if ! sudo yum repolist enabled $RHEL_RDO_REPO_ID | grep -q $RHEL_RDO_REPO_ID; then |
| 282 | 270 |
echo "RDO repo not detected; installing" |
| ... | ... |
@@ -362,12 +344,6 @@ function echo_nolog {
|
| 362 | 362 |
echo $@ >&3 |
| 363 | 363 |
} |
| 364 | 364 |
|
| 365 |
-if is_fedora && [ $DISTRO == "rhel6" ]; then |
|
| 366 |
- # poor old python2.6 doesn't have argparse by default, which |
|
| 367 |
- # outfilter.py uses |
|
| 368 |
- is_package_installed python-argparse || install_package python-argparse |
|
| 369 |
-fi |
|
| 370 |
- |
|
| 371 | 365 |
# Set up logging for ``stack.sh`` |
| 372 | 366 |
# Set ``LOGFILE`` to turn on logging |
| 373 | 367 |
# Append '.xxxxxxxx' to the given name to maintain history |
| ... | ... |
@@ -12,12 +12,10 @@ |
| 12 | 12 |
# - httplib2 0.8 permissions are 600 in the package and |
| 13 | 13 |
# pip 1.4 doesn't fix it (1.3 did) |
| 14 | 14 |
# |
| 15 |
-# - RHEL6: |
|
| 16 |
-# |
|
| 15 |
+# - Fedora: |
|
| 17 | 16 |
# - set selinux not enforcing |
| 18 |
-# - (re)start messagebus daemon |
|
| 19 |
-# - remove distro packages python-crypto and python-lxml |
|
| 20 |
-# - pre-install hgtools to work around a bug in RHEL6 distribute |
|
| 17 |
+# - uninstall firewalld (f20 only) |
|
| 18 |
+ |
|
| 21 | 19 |
|
| 22 | 20 |
# If TOP_DIR is set we're being sourced rather than running stand-alone |
| 23 | 21 |
# or in a sub-shell |
| ... | ... |
@@ -125,64 +123,3 @@ if is_fedora; then |
| 125 | 125 |
fi |
| 126 | 126 |
|
| 127 | 127 |
fi |
| 128 |
- |
|
| 129 |
-# RHEL6 |
|
| 130 |
-# ----- |
|
| 131 |
- |
|
| 132 |
-if [[ $DISTRO =~ (rhel6) ]]; then |
|
| 133 |
- |
|
| 134 |
- # install_pip.sh installs the latest setuptools over the packaged |
|
| 135 |
- # version. We can't really uninstall the packaged version if it |
|
| 136 |
- # is there, because it may remove other important things like |
|
| 137 |
- # cloud-init. Things work, but there can be an old egg file left |
|
| 138 |
- # around from the package that causes some really strange |
|
| 139 |
- # setuptools errors. Remove it, if it is there |
|
| 140 |
- sudo rm -f /usr/lib/python2.6/site-packages/setuptools-0.6*.egg-info |
|
| 141 |
- |
|
| 142 |
- # If the ``dbus`` package was installed by DevStack dependencies the |
|
| 143 |
- # uuid may not be generated because the service was never started (PR#598200), |
|
| 144 |
- # causing Nova to stop later on complaining that ``/var/lib/dbus/machine-id`` |
|
| 145 |
- # does not exist. |
|
| 146 |
- sudo service messagebus restart |
|
| 147 |
- |
|
| 148 |
- # The following workarounds break xenserver |
|
| 149 |
- if [ "$VIRT_DRIVER" != 'xenserver' ]; then |
|
| 150 |
- # An old version of ``python-crypto`` (2.0.1) may be installed on a |
|
| 151 |
- # fresh system via Anaconda and the dependency chain |
|
| 152 |
- # ``cas`` -> ``python-paramiko`` -> ``python-crypto``. |
|
| 153 |
- # ``pip uninstall pycrypto`` will remove the packaged ``.egg-info`` |
|
| 154 |
- # file but leave most of the actual library files behind in |
|
| 155 |
- # ``/usr/lib64/python2.6/Crypto``. Later ``pip install pycrypto`` |
|
| 156 |
- # will install over the packaged files resulting |
|
| 157 |
- # in a useless mess of old, rpm-packaged files and pip-installed files. |
|
| 158 |
- # Remove the package so that ``pip install python-crypto`` installs |
|
| 159 |
- # cleanly. |
|
| 160 |
- # Note: other RPM packages may require ``python-crypto`` as well. |
|
| 161 |
- # For example, RHEL6 does not install ``python-paramiko packages``. |
|
| 162 |
- uninstall_package python-crypto |
|
| 163 |
- |
|
| 164 |
- # A similar situation occurs with ``python-lxml``, which is required by |
|
| 165 |
- # ``ipa-client``, an auditing package we don't care about. The |
|
| 166 |
- # build-dependencies needed for ``pip install lxml`` (``gcc``, |
|
| 167 |
- # ``libxml2-dev`` and ``libxslt-dev``) are present in |
|
| 168 |
- # ``files/rpms/general``. |
|
| 169 |
- uninstall_package python-lxml |
|
| 170 |
- fi |
|
| 171 |
- |
|
| 172 |
- # ``setup.py`` contains a ``setup_requires`` package that is supposed |
|
| 173 |
- # to be transient. However, RHEL6 distribute has a bug where |
|
| 174 |
- # ``setup_requires`` registers entry points that are not cleaned |
|
| 175 |
- # out properly after the setup-phase resulting in installation failures |
|
| 176 |
- # (bz#924038). Pre-install the problem package so the ``setup_requires`` |
|
| 177 |
- # dependency is satisfied and it will not be installed transiently. |
|
| 178 |
- # Note we do this before the track-depends in ``stack.sh``. |
|
| 179 |
- pip_install hgtools |
|
| 180 |
- |
|
| 181 |
- # workaround for https://code.google.com/p/unittest-ext/issues/detail?id=79 |
|
| 182 |
- install_package python-unittest2 patch |
|
| 183 |
- pip_install discover |
|
| 184 |
- (cd /usr/lib/python2.6/site-packages/; sudo patch <"$FILES/patches/unittest2-discover.patch" || echo 'Assume already applied') |
|
| 185 |
- # Make sure the discover.pyc is up to date |
|
| 186 |
- sudo rm /usr/lib/python2.6/site-packages/discover.pyc || true |
|
| 187 |
- sudo python -c 'import discover' |
|
| 188 |
-fi |