Rhel_scl_python: Modify python build in place to scl usage 27/24327/2
authorChristian Trautman <ctrautma@redhat.com>
Mon, 14 Nov 2016 15:20:01 +0000 (10:20 -0500)
committerChristian Trautman <ctrautma@redhat.com>
Fri, 18 Nov 2016 16:22:08 +0000 (11:22 -0500)
Previously Rhel install script would build python 3 in place using
downloaded bits. It was suggested to change this to use scl method
instead. This patch modifies the build in place to use scl method
as per Centos scripts.

JIRA: VSPERF-258

Change-Id: I5b6d7b8fd7f96a315d04e1ccdfd381908e0d1ad0
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
docs/configguide/installation.rst
systems/rhel/7.2/build_base_machine.sh
systems/rhel/7.2/prepare_python_env.sh

index 2f3faae..7ba64bb 100755 (executable)
@@ -13,7 +13,7 @@ Supported Operating Systems
 * Fedora 20
 * Fedora 21
 * Fedora 22
-* RedHat 7.2
+* RedHat 7.2 Enterprise
 * Ubuntu 14.04
 
 Supported vSwitches
@@ -99,8 +99,8 @@ reside in a directory called **vsperfenv** in $HOME.
 You will need to activate the virtual environment every time you start a
 new shell session. Its activation is specific to your OS:
 
-CentOS 7
-========
+CentOS 7 and RedHat
+===================
 
 .. code:: bash
 
@@ -108,8 +108,8 @@ CentOS 7
     $ cd $HOME/vsperfenv
     $ source bin/activate
 
-Fedora, RedHat and Ubuntu
-=========================
+Fedora and Ubuntu
+=================
 
 .. code:: bash
 
index 2319535..d57cf9c 100755 (executable)
@@ -78,23 +78,15 @@ if [ "${#failedinstall[*]}" -gt 0 ]; then
     exit 1
 fi
 
-# python34 is not yet available to Red Hat customers so we will just build
-# it as an alternate install in usr/local for use with VSPerf. This prevents
-# any functionality issues with pre-installed packages using python.
-wget https://www.python.org/ftp/python/3.4.2/Python-3.4.2.tar.xz
-tar -xf Python-3.4.2.tar.xz
-cd Python-3.4.2
-./configure
-make
-make altinstall
-cd ..
+# install SCL for python33
+wget https://www.softwarecollections.org/en/scls/rhscl/python33/epel-7-x86_64/download/rhscl-python33-epel-7-x86_64.noarch.rpm
+rpm -i rhscl-python33-epel-7-x86_64.noarch.rpm
 
-# cleanup
-rm -Rf Python-3.4.2
-rm -f Python-3.4.2.tar.xz
-
-# need virtualenv
-pip3.4 install virtualenv
+# install python33 packages and git-review tool
+yum -y install $(echo "
+python33
+python33-python-tkinter
+" | grep -v ^#)
 
 # Create hugepage dirs
 mkdir -p /dev/hugepages
index 1d51380..bd468d8 100755 (executable)
 # limitations under the License.
 
 if [ -d "$VSPERFENV_DIR" ] ; then
-    echo "Directory $VSPERFENV_DIR already exists. Skipping python virtualenv \
-creation."
+    echo "Directory $VSPERFENV_DIR already exists. Skipping python virtualenv creation."
     exit
 fi
 
-# enable virtual environment in a subshell, so QEMU build can use python 2.7
-# Also make sure we know which virtualenv was installed. I've seen the file
-# name change pending on what type of installation was done.
-virtualenv_file=$(ls /usr/local/bin | awk '/virtualenv/')
-
-($virtualenv_file "$VSPERFENV_DIR"
+scl enable python33 "
+virtualenv "$VSPERFENV_DIR"
 source "$VSPERFENV_DIR"/bin/activate
-pip3.4 install -r ../requirements.txt
-pip3.4 install pylint
-)
\ No newline at end of file
+pip install -r ../requirements.txt
+pip install pylint
+"
\ No newline at end of file