Fix malformed pip-install lines
The pip install command attempted to provide version hint requirements on the command line but failed to quote the individual package names. This resulted in the creation of files in the "/" directory of the guest with names corresponding to the versions specified. To make it easier to maintain in the future, a requirements.txt file for ubuntu and fedora and a extra-data.d step which will copy this from the source tree into the guest image (extra-data.d/15-reddwarf-dep) have been added, and the 15-reddwarf-dep step in install.d can reference the requirements.txt file. requirements.txt has been updated to reflect the versions of packages that trove has in its requirements.txt. Finally the dependency issue with testtools and unittest2 have been addressed by adding them to the requirements.txt file and adding the --upgrade option to pip install. Change-Id: Ida186454d247d827312fd004d84efba13f780b0c Closes-Bug: #1406581 Closes-Bug: #1409053
This commit is contained in:
16
scripts/files/elements/fedora-guest/extra-data.d/15-reddwarf-dep
Executable file
16
scripts/files/elements/fedora-guest/extra-data.d/15-reddwarf-dep
Executable file
@@ -0,0 +1,16 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
set -o xtrace
|
||||
|
||||
# CONTEXT: HOST prior to IMAGE BUILD as SCRIPT USER
|
||||
# PURPOSE: Setup the requirements file for use by 15-reddwarf-dep
|
||||
|
||||
source $_LIB/die
|
||||
|
||||
REQUIREMENTS_FILE=${REDSTACK_SCRIPTS}/files/requirements/fedora-requirements.txt
|
||||
|
||||
[ -n "$TMP_HOOKS_PATH." ] || die "Temp hook path not set"
|
||||
[ -e ${REQUIREMENTS_FILE} ] || die "Requirements not found"
|
||||
|
||||
sudo -Hiu ${HOST_USERNAME} dd if=${REQUIREMENTS_FILE} of=${TMP_HOOKS_PATH}/requirements.txt
|
@@ -6,12 +6,17 @@
|
||||
set -e
|
||||
set -o xtrace
|
||||
|
||||
yum install -y python-devel libxml2-devel libxslt-devel python-setuptools python-pip python-sqlalchemy python-lxml \
|
||||
python-routes python-eventlet python-webob python-kombu python-paste-deploy python-paste python-netaddr \
|
||||
python-httplib2 python-iso8601 python-pexpect MySQL-python python-migrate python-pip python-anyjson gcc
|
||||
yum install -y python-devel libxml2-devel libxslt-devel python-setuptools \
|
||||
python-pip python-sqlalchemy python-lxml \
|
||||
python-routes python-eventlet python-webob \
|
||||
python-kombu python-paste-deploy python-paste python-netaddr \
|
||||
python-httplib2 python-iso8601 python-pexpect MySQL-python \
|
||||
python-migrate python-pip python-anyjson gcc
|
||||
|
||||
|
||||
pip-python install extras python-novaclient python-swiftclient python-cinderclient \
|
||||
kombu>2.4.7 six babel python-heatclient passlib jinja2 python-neutronclient netifaces \
|
||||
oslo.config>=1.2.0 oslo.messaging>=1.4.0 oslo.i18n>=1.0.0 oslo.serialization>=1.0.0 oslo.utils>=1.0.0 \
|
||||
osprofiler>=0.3.0 oslo.concurrency>=0.3.0
|
||||
# pick up the requirements file left for us by
|
||||
# extra-data.d/15-reddwarf-dep
|
||||
|
||||
TMP_HOOKS_DIR="/tmp/in_target.d"
|
||||
|
||||
pip install -q --upgrade -r ${TMP_HOOKS_DIR}/requirements.txt
|
||||
|
16
scripts/files/elements/ubuntu-guest/extra-data.d/15-reddwarf-dep
Executable file
16
scripts/files/elements/ubuntu-guest/extra-data.d/15-reddwarf-dep
Executable file
@@ -0,0 +1,16 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
set -o xtrace
|
||||
|
||||
# CONTEXT: HOST prior to IMAGE BUILD as SCRIPT USER
|
||||
# PURPOSE: Setup the requirements file for use by 15-reddwarf-dep
|
||||
|
||||
source $_LIB/die
|
||||
|
||||
REQUIREMENTS_FILE=${REDSTACK_SCRIPTS}/files/requirements/ubuntu-requirements.txt
|
||||
|
||||
[ -n "$TMP_HOOKS_PATH." ] || die "Temp hook path not set"
|
||||
[ -e ${REQUIREMENTS_FILE} ] || die "Requirements not found"
|
||||
|
||||
sudo -Hiu ${HOST_USERNAME} dd if=${REQUIREMENTS_FILE} of=${TMP_HOOKS_PATH}/requirements.txt
|
@@ -7,12 +7,16 @@ set -e
|
||||
set -o xtrace
|
||||
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
apt-get -y install python-dev libxml2-dev libxslt1-dev python-setuptools python-pip python-sqlalchemy python-lxml \
|
||||
python-routes python-eventlet python-webob python-pastedeploy python-paste python-netaddr \
|
||||
apt-get -y install python-dev libxml2-dev libxslt1-dev python-setuptools \
|
||||
python-pip python-sqlalchemy python-lxml \
|
||||
python-routes python-eventlet python-webob \
|
||||
python-pastedeploy python-paste python-netaddr \
|
||||
python-httplib2 python-iso8601 python-pexpect python-mysqldb python-migrate
|
||||
|
||||
|
||||
pip install extras python-novaclient python-swiftclient python-cinderclient \
|
||||
kombu>2.4.7 six babel python-heatclient passlib jinja2 python-neutronclient netifaces \
|
||||
oslo.config>=1.2.0 oslo.messaging>=1.4.0 oslo.i18n>=1.0.0 oslo.serialization>=1.0.0 oslo.utils>=1.0.0 \
|
||||
osprofiler>=0.3.0 oslo.concurrency>=0.3.0
|
||||
# pick up the requirements file left for us by
|
||||
# extra-data.d/15-reddwarf-dep
|
||||
|
||||
TMP_HOOKS_DIR="/tmp/in_target.d"
|
||||
|
||||
pip install -q --upgrade -r ${TMP_HOOKS_DIR}/requirements.txt
|
||||
|
24
scripts/files/requirements/fedora-requirements.txt
Normal file
24
scripts/files/requirements/fedora-requirements.txt
Normal file
@@ -0,0 +1,24 @@
|
||||
# The order of packages is significant, because pip processes them in the order
|
||||
# of appearance. Changing the order has an impact on the overall integration
|
||||
# process, which may cause wedges in the gate later.
|
||||
unittest2
|
||||
testtools
|
||||
extras
|
||||
python-novaclient>=2.18.0
|
||||
python-swiftclient>=2.2.0
|
||||
python-cinderclient>=1.1.0
|
||||
kombu>=2.5.0
|
||||
six>=1.7.0
|
||||
babel
|
||||
python-heatclient>=0.2.9
|
||||
passlib
|
||||
jinja2
|
||||
python-neutronclient>=2.3.6,<3
|
||||
netifaces>=0.10.4
|
||||
oslo.config>=1.4.0 # Apache-2.0
|
||||
oslo.messaging>=1.4.0,!=1.5.0
|
||||
oslo.i18n>=1.0.0
|
||||
oslo.serialization>=1.0.0
|
||||
oslo.utils>=1.1.0
|
||||
osprofiler>=0.3.0
|
||||
oslo.concurrency>=0.3.0
|
24
scripts/files/requirements/ubuntu-requirements.txt
Normal file
24
scripts/files/requirements/ubuntu-requirements.txt
Normal file
@@ -0,0 +1,24 @@
|
||||
# The order of packages is significant, because pip processes them in the order
|
||||
# of appearance. Changing the order has an impact on the overall integration
|
||||
# process, which may cause wedges in the gate later.
|
||||
unittest2
|
||||
testtools
|
||||
extras
|
||||
python-novaclient>=2.18.0
|
||||
python-swiftclient>=2.2.0
|
||||
python-cinderclient>=1.1.0
|
||||
kombu>=2.5.0
|
||||
six>=1.7.0
|
||||
babel
|
||||
python-heatclient>=0.2.9
|
||||
passlib
|
||||
jinja2
|
||||
python-neutronclient>=2.3.6,<3
|
||||
netifaces>=0.10.4
|
||||
oslo.config>=1.4.0 # Apache-2.0
|
||||
oslo.messaging>=1.4.0,!=1.5.0
|
||||
oslo.i18n>=1.0.0
|
||||
oslo.serialization>=1.0.0
|
||||
oslo.utils>=1.1.0
|
||||
osprofiler>=0.3.0
|
||||
oslo.concurrency>=0.3.0
|
Reference in New Issue
Block a user