diff --git a/hooks/install b/hooks/install deleted file mode 120000 index 2af5208..0000000 --- a/hooks/install +++ /dev/null @@ -1 +0,0 @@ -percona_hooks.py \ No newline at end of file diff --git a/hooks/install b/hooks/install new file mode 100755 index 0000000..83a9d3c --- /dev/null +++ b/hooks/install @@ -0,0 +1,20 @@ +#!/bin/bash +# Wrapper to deal with newer Ubuntu versions that don't have py2 installed +# by default. + +declare -a DEPS=('apt' 'netaddr' 'netifaces' 'pip' 'yaml') + +check_and_install() { + pkg="${1}-${2}" + if ! dpkg -s ${pkg} 2>&1 > /dev/null; then + apt-get -y install ${pkg} + fi +} + +PYTHON="python" + +for dep in ${DEPS[@]}; do + check_and_install ${PYTHON} ${dep} +done + +exec ./hooks/install.real diff --git a/hooks/install.real b/hooks/install.real new file mode 120000 index 0000000..2af5208 --- /dev/null +++ b/hooks/install.real @@ -0,0 +1 @@ +percona_hooks.py \ No newline at end of file diff --git a/hooks/percona_hooks.py b/hooks/percona_hooks.py index 1e61263..c15c749 100755 --- a/hooks/percona_hooks.py +++ b/hooks/percona_hooks.py @@ -93,7 +93,7 @@ RES_MONITOR_PARAMS = ('params user="sstuser" password="%(sstpass)s" ' 'OCF_CHECK_LEVEL="1"') -@hooks.hook('install') +@hooks.hook('install.real') def install(): execd_preinstall() if config('source') is None and \