Make sure that the CentOS 6 test script actually does the yum update call.
[arvados-dev.git] / jenkins / test-packages-centos6.sh
index ea3ed097135ad7e7ec12d9712510afc21ee821fd..f8f1e1b414546166bca5898e2f5a4ff141afaecc 100755 (executable)
@@ -1,54 +1,29 @@
-#!/bin/sh
+#!/bin/bash
 
-if test "$1" = --run-test ; then
-
-    if test -z "$WORKSPACE" ; then
-        echo "Must set WORKSPACE"
+if ! python --version |& grep "Python 2.7" >/dev/null ; then
+    # Re-execute in the software collections Python 2.7 environment.
+    exec scl enable python27 $0
+else
+    yum -q clean all
+    yum -q -y update
+    if ! yum -q install --assumeyes \
+         python27-python-arvados-python-client python27-python-arvados-fuse arvados-node-manager
+    then
         exit 1
     fi
 
-    self=$(readlink -f $0)
-    base=$(dirname $self)
-
-    createrepo $WORKSPACE/packages/centos6
-
-    exec docker run \
-         --rm \
-         --volume=$WORKSPACE/packages/centos6:/mnt \
-         --volume=$(readlink -f $0):/root/run-test.sh \
-         --volume=$base/common-test-packages.sh:/root/common-test.sh \
-         --workdir=/mnt \
-         centos:6 \
-         /root/run-test.sh --install-scl
-fi
+    mkdir -p /tmp/opts
+    cd /tmp/opts
 
-if test "$1" = --install-scl ; then
-    yum install --assumeyes scl-utils
-    curl -L -O https://www.softwarecollections.org/en/scls/rhscl/python27/epel-6-x86_64/download/rhscl-python27-epel-6-x86_64.noarch.rpm
-    yum install --assumeyes rhscl-python27-epel-6-x86_64.noarch.rpm
-    yum install --assumeyes python27
-    exec scl enable python27 $0
-fi
+    for r in /arvados/packages/centos6/python27-python-*x86_64.rpm ; do
+        rpm2cpio $r | cpio -idm
+    done
 
-cat >/etc/yum.repos.d/localrepo.repo <<EOF
-[localrepo]
-name=Arvados Test
-baseurl=file:///mnt
-gpgcheck=0
-enabled=1
-EOF
+    for so in $(find . -name "*.so") ; do
+        echo
+        echo "== Packages dependencies for $so =="
+        ldd $so | awk '($3 ~ /^\//){print $3}' | sort -u | xargs rpm -qf | sort -u
+    done
 
-yum clean all
-yum update
-if ! yum install --assumeyes python27-python-arvados-python-client python27-python-arvados-fuse ; then
-    exit 1
+    exec /jenkins/common-test-packages.sh
 fi
-
-mkdir -p /tmp/opts
-cd /tmp/opts
-
-for r in /mnt/python27-python-*x86_64.rpm ; do
-    rpm2cpio $r | cpio -idm
-done
-
-exec /root/common-test.sh