]> review.fuel-infra Code Review - openstack-build/horizon-build.git/commitdiff
Fix issues with dpkg-maintscript-helper.
authorIvan Udovichenko <iudovichenko@mirantis.com>
Thu, 31 Mar 2016 19:12:11 +0000 (22:12 +0300)
committerIvan Udovichenko <iudovichenko@mirantis.com>
Thu, 31 Mar 2016 19:12:11 +0000 (22:12 +0300)
Rewritten-From: c6fde227b66db2457e974e66b006343293352e26

xenial/debian/openstack-dashboard-apache.postinst
xenial/debian/openstack-dashboard-apache.postrm
xenial/debian/openstack-dashboard-apache.preinst
xenial/debian/openstack-dashboard.postinst
xenial/debian/openstack-dashboard.postrm
xenial/debian/openstack-dashboard.preinst

index 561a2fb89fa6b1cc087324162bc6bf4aae1e5275..2e9e384573c67037889f3f3336485b1a4e545779 100644 (file)
@@ -2,9 +2,8 @@
 
 set -e
 
-
 dpkg-maintscript-helper dir_to_symlink \
-       /usr/share/openstack-dashboard/static /var/lib/openstack-dashboard/static -- "$@"
+       /usr/share/openstack-dashboard/static /var/lib/openstack-dashboard/static 9.0.0~rc1-2 openstack-dashboard-apache -- "$@"
 
 if [ "$1" = "configure" ] ; then
        . /usr/share/debconf/confmodule
@@ -46,6 +45,13 @@ HORIZON_USE_SSL=yes" >/etc/default/openstack-dashboard-apache
                        a2dissite openstack-dashboard-alias-only.conf
                        a2ensite openstack-dashboard.conf
                fi
+               if [ -L /usr/share/openstack-dashboard/static ]; then
+                       if ! [ $(readlink -s /usr/share/openstack-dashboard/static) = /var/lib/openstack-dashboard/static ]; then
+                               ln -fs /var/lib/openstack-dashboard/static /usr/share/openstack-dashboard/static
+                       fi
+               else
+                       ln -fs /var/lib/openstack-dashboard/static /usr/share/openstack-dashboard/static
+               fi
                /usr/share/openstack-dashboard/manage.py collectstatic --clear --noinput
                /usr/share/openstack-dashboard/manage.py compress --force
                if [ -f '/var/lib/openstack-dashboard/secret-key/.secret_key_store' ]; then
index 8fbb792aaed7f6463e91a4192bd085ef4a8345ff..aeec9fa9c7df9530c05c79185e43ff358877fd01 100644 (file)
@@ -3,7 +3,8 @@
 set -e
 
 dpkg-maintscript-helper dir_to_symlink \
-       /usr/share/openstack-dashboard/static /var/lib/openstack-dashboard/static -- "$@"
+       /usr/share/openstack-dashboard/static /var/lib/openstack-dashboard/static 9.0.0~rc1-2 openstack-dashboard-apache -- "$@"
+
 
 if [ "${1}" = "purge" ] ; then
        if [ -f /etc/default/openstack-dashboard-apache ] ; then
index f253fa79e22ab7fc1a37b4d8b8015104ce6d8b55..3916bba8adaa9cf63416869992f8dcf90bfe4748 100644 (file)
@@ -2,7 +2,36 @@
 
 set -e
 
-dpkg-maintscript-helper dir_to_symlink \
-       /usr/share/openstack-dashboard/static /var/lib/openstack-dashboard/static -- "$@"
+error() {
+       echo "error: $1" >&2
+       exit 1
+}
+
+dir_to_symlink_preinst() {
+       local PATHNAME="$1"
+       local SYMLINK_TARGET="$2"
+       local LASTVERSION="$3"
+       local PACKAGE="$4"
+
+       # Skip remaining parameters up to --
+       while [ "$1" != "--" -a $# -gt 0 ]; do shift; done
+       shift
+
+       if [ -n "$DPKG_MAINTSCRIPT_NAME" ] || error "environment variable DPKG_MAINTSCRIPT_NAME is required"
+       [ -n "$1" ] || error "maintainer script parameters are missing"
+
+       [ -n "$2" ] && [ ! -h "$PATHNAME" ] && [ -d "$PATHNAME" ] && dpkg --compare-versions "$2" le-nl "$LASTVERSION"; then
+               mv -f "$PATHNAME" "${PATHNAME}.dpkg-backup"
+               mkdir "$PATHNAME"
+               touch "$PATHNAME/.dpkg-staging-dir"
+       fi
+}
+
+if [ "$1" = "install" -o "$1" = "upgrade" ] ; then
+       if [ -e /usr/share/openstack-dashboard/static ] ; then
+               dir_to_symlink_preinst /usr/share/openstack-dashboard/static /var/lib/openstack-dashboard/static 9.0.0~rc1-2 openstack-dashboard -- "$@"
+       fi
+       dir_to_symlink_preinst /usr/share/openstack-dashboard/static /var/lib/openstack-dashboard/static 9.0.0~rc1-2 openstack-dashboard -- "$@"
+fi
 
 #DEBHELPER#
index db9f6409faa5e9785aa4ca443ba6629614cc6ae8..3c4b05ea67d8fc93d106e9118f90c34f580a81e2 100644 (file)
@@ -3,7 +3,7 @@
 set -e
 
 dpkg-maintscript-helper dir_to_symlink \
-       /usr/share/openstack-dashboard/static /var/lib/openstack-dashboard/static -- "$@"
+       /usr/share/openstack-dashboard/static /var/lib/openstack-dashboard/static 9.0.0~rc1-2 openstack-dashboard -- "$@"
 
 if [ "$1" = "configure" ] ; then
        adduser --system \
@@ -20,6 +20,14 @@ if [ "$1" = "configure" ] ; then
                cp /usr/share/openstack-dashboard/local_settings.py /etc/openstack-dashboard/local_settings.py
        fi
 
+       if [ -L /usr/share/openstack-dashboard/static ]; then
+               if ! [ $(readlink -s /usr/share/openstack-dashboard/static) = /var/lib/openstack-dashboard/static ]; then
+                       ln -fs /var/lib/openstack-dashboard/static /usr/share/openstack-dashboard/static
+               fi
+       else
+               ln -fs /var/lib/openstack-dashboard/static /usr/share/openstack-dashboard/static
+       fi
+
        # Compress the JS and CSS with python-compressor and python-lesscpy
        /usr/share/openstack-dashboard/manage.py collectstatic --clear --noinput
        /usr/share/openstack-dashboard/manage.py compress --force
index 41afedc47daf1b8b2c42d7c46993b001c8264642..eb967542a0b2289432c7266d01efd3bd601205d5 100644 (file)
@@ -3,7 +3,7 @@
 set -e
 
 dpkg-maintscript-helper dir_to_symlink \
-       /usr/share/openstack-dashboard/static /var/lib/openstack-dashboard/static -- "$@"
+       /usr/share/openstack-dashboard/static /var/lib/openstack-dashboard/static 9.0.0~rc1-2 openstack-dashboard -- "$@"
 
 if [ "${1}" = "purge" ] ; then
        rm -f /etc/openstack-dashboard/local_settings.py
index f253fa79e22ab7fc1a37b4d8b8015104ce6d8b55..3916bba8adaa9cf63416869992f8dcf90bfe4748 100644 (file)
@@ -2,7 +2,36 @@
 
 set -e
 
-dpkg-maintscript-helper dir_to_symlink \
-       /usr/share/openstack-dashboard/static /var/lib/openstack-dashboard/static -- "$@"
+error() {
+       echo "error: $1" >&2
+       exit 1
+}
+
+dir_to_symlink_preinst() {
+       local PATHNAME="$1"
+       local SYMLINK_TARGET="$2"
+       local LASTVERSION="$3"
+       local PACKAGE="$4"
+
+       # Skip remaining parameters up to --
+       while [ "$1" != "--" -a $# -gt 0 ]; do shift; done
+       shift
+
+       if [ -n "$DPKG_MAINTSCRIPT_NAME" ] || error "environment variable DPKG_MAINTSCRIPT_NAME is required"
+       [ -n "$1" ] || error "maintainer script parameters are missing"
+
+       [ -n "$2" ] && [ ! -h "$PATHNAME" ] && [ -d "$PATHNAME" ] && dpkg --compare-versions "$2" le-nl "$LASTVERSION"; then
+               mv -f "$PATHNAME" "${PATHNAME}.dpkg-backup"
+               mkdir "$PATHNAME"
+               touch "$PATHNAME/.dpkg-staging-dir"
+       fi
+}
+
+if [ "$1" = "install" -o "$1" = "upgrade" ] ; then
+       if [ -e /usr/share/openstack-dashboard/static ] ; then
+               dir_to_symlink_preinst /usr/share/openstack-dashboard/static /var/lib/openstack-dashboard/static 9.0.0~rc1-2 openstack-dashboard -- "$@"
+       fi
+       dir_to_symlink_preinst /usr/share/openstack-dashboard/static /var/lib/openstack-dashboard/static 9.0.0~rc1-2 openstack-dashboard -- "$@"
+fi
 
 #DEBHELPER#