8080: Successfully tests all packages. Produces before/after/diff lists for each...
[arvados.git] / jenkins / test-packages-centos6.sh
index 7a13982cb41c6a0361417b97ca62fdf94f2de2cb..9241291ce7025e7c48de4859d485bc4e0ee9f839 100755 (executable)
@@ -1,25 +1,42 @@
 #!/bin/bash
 
+set -eu
+
 yum -q clean all
 touch /var/lib/rpm/*
-if ! yum -q install --assumeyes \
-     python27-python-arvados-python-client python27-python-arvados-fuse arvados-node-manager
-then
-    exit 1
+
+rpm -qa | sort > /arvados/packages/centos6/$1.before
+
+yum install --assumeyes $1
+
+rpm -qa | sort > /arvados/packages/centos6/$1.after
+
+set +e
+diff /arvados/packages/centos6/$1.before /arvados/packages/centos6/$1.after > /arvados/packages/centos6/$1.diff
+set -e
+
+SCL=""
+if scl enable python27 true 2>/dev/null ; then
+    SCL="scl enable python27"
 fi
 
 mkdir -p /tmp/opts
 cd /tmp/opts
 
-for r in /arvados/packages/centos6/python27-python-*x86_64.rpm ; do
-    rpm2cpio $r | cpio -idm
-done
+rpm2cpio /arvados/packages/centos6/$1-*.rpm | cpio -idm 2>/dev/null
 
-for so in $(find -name "*.so") ; do
-    echo
-    echo "== Packages dependencies for $so =="
-    scl enable python27 "ldd $so" \
-        | awk '($3 ~ /^\//){print $3}' | sort -u | xargs rpm -qf | sort -u
-done
+shared=$(find -name '*.so')
+if test -n "$shared" ; then
+    for so in $shared ; do
+        echo
+        echo "== Packages dependencies for $so =="
+        $SCL ldd "$so" \
+            | awk '($3 ~ /^\//){print $3}' | sort -u | xargs rpm -qf | sort -u
+    done
+fi
 
-exec scl enable python27 /jenkins/common-test-packages.sh
+if test -n "$SCL" ; then
+    exec $SCL "/jenkins/common-test-packages.sh $1"
+else
+    exec /jenkins/common-test-packages.sh $1
+fi