You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by ao...@apache.org on 2016/02/03 10:52:58 UTC
ambari git commit: AMBARI-14877. [Ambari tarballs] Refactor
postinstall and postremove scripts to use install-helper.sh exclusively
(aonishuk)
Repository: ambari
Updated Branches:
refs/heads/trunk 58b91c845 -> f6a75a609
AMBARI-14877. [Ambari tarballs] Refactor postinstall and postremove scripts to use install-helper.sh exclusively (aonishuk)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/f6a75a60
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/f6a75a60
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/f6a75a60
Branch: refs/heads/trunk
Commit: f6a75a609caa1ce24c6cf9ab1f6303eb5bc9e923
Parents: 58b91c8
Author: Andrew Onishuk <ao...@hortonworks.com>
Authored: Wed Feb 3 11:52:49 2016 +0200
Committer: Andrew Onishuk <ao...@hortonworks.com>
Committed: Wed Feb 3 11:52:49 2016 +0200
----------------------------------------------------------------------
ambari-agent/conf/unix/install-helper.sh | 40 +++++++++++++++-
.../src/main/package/deb/control/postinst | 12 +----
.../src/main/package/deb/control/posttrm | 15 ------
ambari-agent/src/main/package/deb/control/prerm | 8 ----
.../src/main/package/rpm/postinstall.sh | 19 +-------
ambari-agent/src/main/package/rpm/preremove.sh | 8 ----
ambari-agent/src/packages/tarball/all.xml | 4 +-
ambari-server/conf/unix/install-helper.sh | 48 ++++++++++++++++----
ambari-server/src/main/assemblies/server.xml | 2 +-
.../src/main/package/deb/control/postinst | 10 +---
.../src/main/package/deb/control/posttrm | 15 ------
.../src/main/package/deb/control/prerm | 18 +-------
.../src/main/package/rpm/postinstall.sh | 8 +---
ambari-server/src/main/package/rpm/preremove.sh | 18 ++------
14 files changed, 92 insertions(+), 133 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/f6a75a60/ambari-agent/conf/unix/install-helper.sh
----------------------------------------------------------------------
diff --git a/ambari-agent/conf/unix/install-helper.sh b/ambari-agent/conf/unix/install-helper.sh
index 185290c..91ae248 100644
--- a/ambari-agent/conf/unix/install-helper.sh
+++ b/ambari-agent/conf/unix/install-helper.sh
@@ -33,6 +33,11 @@ PYTHON_WRAPER_TARGET="/usr/bin/ambari-python-wrap"
PYTHON_WRAPER_SOURCE="/var/lib/ambari-agent/ambari-python-wrap"
do_install(){
+ if [ -d "/etc/ambari-agent/conf.save" ]; then
+ cp -f /etc/ambari-agent/conf.save/* /etc/ambari-agent/conf
+ mv /etc/ambari-agent/conf.save /etc/ambari-agent/conf_$(date '+%d_%m_%y_%H_%M').save
+ fi
+
# setting ambari_commons shared resource
rm -rf "$OLD_COMMON_DIR"
if [ ! -d "$COMMON_DIR" ]; then
@@ -61,10 +66,34 @@ do_install(){
chmod 777 /var/lib/ambari-agent/tmp
chmod 700 /var/lib/ambari-agent/data
+
+ which chkconfig > /dev/null 2>&1
+ if [ "$?" -eq 0 ] ; then
+ chkconfig --add ambari-agent
+ fi
+ which update-rc.d > /dev/null 2>&1
+ if [ "$?" -eq 0 ] ; then
+ update-rc.d ambari-agent defaults
+ fi
+
+ BAK=/etc/ambari-agent/conf/ambari-agent.ini.old
+ ORIG=/etc/ambari-agent/conf/ambari-agent.ini
+
+ if [ -f $BAK ]; then
+ if [ -f "/var/lib/ambari-agent/upgrade_agent_configs.py" ]; then
+ /var/lib/ambari-agent/upgrade_agent_configs.py
+ fi
+ mv $BAK ${BAK}_$(date '+%d_%m_%y_%H_%M').save
+ fi
}
do_remove(){
-
+ /usr/sbin/ambari-agent stop > /dev/null 2>&1
+ if [ -d "/etc/ambari-agent/conf.save" ]; then
+ mv /etc/ambari-agent/conf.save /etc/ambari-agent/conf_$(date '+%d_%m_%y_%H_%M').save
+ fi
+ mv /etc/ambari-agent/conf /etc/ambari-agent/conf.save
+
if [ -f "$PYTHON_WRAPER_TARGET" ]; then
rm -f "$PYTHON_WRAPER_TARGET"
fi
@@ -93,6 +122,15 @@ do_remove(){
if [ -f "$INSTALL_HELPER_SERVER" ]; then # call server shared files installer
$INSTALL_HELPER_SERVER install
fi
+
+ which chkconfig > /dev/null 2>&1
+ if [ "$?" -eq 0 ] ; then
+ chkconfig --list | grep ambari-server && chkconfig --del ambari-agent
+ fi
+ which update-rc.d > /dev/null 2>&1
+ if [ "$?" -eq 0 ] ; then
+ update-rc.d -f ambari-agent remove
+ fi
}
do_upgrade(){
http://git-wip-us.apache.org/repos/asf/ambari/blob/f6a75a60/ambari-agent/src/main/package/deb/control/postinst
----------------------------------------------------------------------
diff --git a/ambari-agent/src/main/package/deb/control/postinst b/ambari-agent/src/main/package/deb/control/postinst
index ceca9be..48cb07c 100644
--- a/ambari-agent/src/main/package/deb/control/postinst
+++ b/ambari-agent/src/main/package/deb/control/postinst
@@ -14,20 +14,12 @@
# See the License for the specific language governing permissions and
# limitations under the License
+# Warning: don't add changes to this script directly, please add changes to install-helper.sh.
+
if [ "$1" == "configure" ]; then # Action is install
if [ -f "/var/lib/ambari-agent/install-helper.sh" ]; then
/var/lib/ambari-agent/install-helper.sh install
fi
- update-rc.d ambari-agent defaults
fi
-BAK=/etc/ambari-agent/conf/ambari-agent.ini.old
-ORIG=/etc/ambari-agent/conf/ambari-agent.ini
-
-if [ -f $BAK ];then
- if [ -f "/var/lib/ambari-agent/upgrade_agent_configs.py" ]; then
- /var/lib/ambari-agent/upgrade_agent_configs.py
- fi
- mv $BAK ${BAK}_$(date '+%d_%m_%y_%H_%M').save
-fi
exit 0
http://git-wip-us.apache.org/repos/asf/ambari/blob/f6a75a60/ambari-agent/src/main/package/deb/control/posttrm
----------------------------------------------------------------------
diff --git a/ambari-agent/src/main/package/deb/control/posttrm b/ambari-agent/src/main/package/deb/control/posttrm
deleted file mode 100644
index 21a01fa..0000000
--- a/ambari-agent/src/main/package/deb/control/posttrm
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/bash
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License
http://git-wip-us.apache.org/repos/asf/ambari/blob/f6a75a60/ambari-agent/src/main/package/deb/control/prerm
----------------------------------------------------------------------
diff --git a/ambari-agent/src/main/package/deb/control/prerm b/ambari-agent/src/main/package/deb/control/prerm
index 70a9c63..8da949c 100644
--- a/ambari-agent/src/main/package/deb/control/prerm
+++ b/ambari-agent/src/main/package/deb/control/prerm
@@ -19,17 +19,9 @@
# for details
if [ "$1" == "remove" ]; then # Action is uninstall
- /usr/sbin/ambari-agent stop > /dev/null 2>&1
- if [ -d "/etc/ambari-agent/conf.save" ]; then
- mv /etc/ambari-agent/conf.save /etc/ambari-agent/conf_$(date '+%d_%m_%y_%H_%M').save
- fi
- mv /etc/ambari-agent/conf /etc/ambari-agent/conf.save
-
if [ -f "/var/lib/ambari-agent/install-helper.sh" ]; then
/var/lib/ambari-agent/install-helper.sh remove
fi
-
- update-rc.d -f ambari-agent remove
fi
exit 0
http://git-wip-us.apache.org/repos/asf/ambari/blob/f6a75a60/ambari-agent/src/main/package/rpm/postinstall.sh
----------------------------------------------------------------------
diff --git a/ambari-agent/src/main/package/rpm/postinstall.sh b/ambari-agent/src/main/package/rpm/postinstall.sh
index 56c6573..17e6e0e 100644
--- a/ambari-agent/src/main/package/rpm/postinstall.sh
+++ b/ambari-agent/src/main/package/rpm/postinstall.sh
@@ -13,36 +13,19 @@
# See the License for the specific language governing permissions and
# limitations under the License
+# Warning: don't add changes to this script directly, please add changes to install-helper.sh.
case "$1" in
1) # Action install
if [ -f "/var/lib/ambari-agent/install-helper.sh" ]; then
/var/lib/ambari-agent/install-helper.sh install
fi
- chkconfig --add ambari-agent
;;
2) # Action upgrade
- if [ -d "/etc/ambari-agent/conf.save" ]; then
- cp -f /etc/ambari-agent/conf.save/* /etc/ambari-agent/conf
- mv /etc/ambari-agent/conf.save /etc/ambari-agent/conf_$(date '+%d_%m_%y_%H_%M').save
- fi
-
if [ -f "/var/lib/ambari-agent/install-helper.sh" ]; then
/var/lib/ambari-agent/install-helper.sh upgrade
fi
;;
esac
-
-BAK=/etc/ambari-agent/conf/ambari-agent.ini.old
-ORIG=/etc/ambari-agent/conf/ambari-agent.ini
-
-if [ -f $BAK ]; then
- if [ -f "/var/lib/ambari-agent/upgrade_agent_configs.py" ]; then
- /var/lib/ambari-agent/upgrade_agent_configs.py
- fi
- mv $BAK ${BAK}_$(date '+%d_%m_%y_%H_%M').save
-fi
-
-
exit 0
http://git-wip-us.apache.org/repos/asf/ambari/blob/f6a75a60/ambari-agent/src/main/package/rpm/preremove.sh
----------------------------------------------------------------------
diff --git a/ambari-agent/src/main/package/rpm/preremove.sh b/ambari-agent/src/main/package/rpm/preremove.sh
index 2078acd..e266114 100644
--- a/ambari-agent/src/main/package/rpm/preremove.sh
+++ b/ambari-agent/src/main/package/rpm/preremove.sh
@@ -19,17 +19,9 @@
if [ "$1" -eq 0 ]; then # Action is uninstall
- /usr/sbin/ambari-agent stop > /dev/null 2>&1
- if [ -d "/etc/ambari-agent/conf.save" ]; then
- mv /etc/ambari-agent/conf.save /etc/ambari-agent/conf_$(date '+%d_%m_%y_%H_%M').save
- fi
- mv /etc/ambari-agent/conf /etc/ambari-agent/conf.save
-
if [ -f "/var/lib/ambari-agent/install-helper.sh" ]; then
/var/lib/ambari-agent/install-helper.sh remove
fi
-
- chkconfig --list | grep ambari-server && chkconfig --del ambari-server
fi
exit 0
http://git-wip-us.apache.org/repos/asf/ambari/blob/f6a75a60/ambari-agent/src/packages/tarball/all.xml
----------------------------------------------------------------------
diff --git a/ambari-agent/src/packages/tarball/all.xml b/ambari-agent/src/packages/tarball/all.xml
index d4ed2ff..d9732cc 100644
--- a/ambari-agent/src/packages/tarball/all.xml
+++ b/ambari-agent/src/packages/tarball/all.xml
@@ -161,7 +161,7 @@
</file>
<file>
<fileMode>755</fileMode>
- <source>conf/unix/ambari-agent</source>
+ <source>${basedir}/target/src/ambari-agent</source>
<outputDirectory>/usr/sbin</outputDirectory>
</file>
<file>
@@ -187,7 +187,7 @@
<file>
<fileMode>755</fileMode>
<source>etc/init.d/ambari-agent</source>
- <outputDirectory>/etc/init.d/ambari-agent</outputDirectory>
+ <outputDirectory>/etc/init.d</outputDirectory>
</file>
<file>
<fileMode>644</fileMode>
http://git-wip-us.apache.org/repos/asf/ambari/blob/f6a75a60/ambari-server/conf/unix/install-helper.sh
----------------------------------------------------------------------
diff --git a/ambari-server/conf/unix/install-helper.sh b/ambari-server/conf/unix/install-helper.sh
index 2635694..c7d05b4 100644
--- a/ambari-server/conf/unix/install-helper.sh
+++ b/ambari-server/conf/unix/install-helper.sh
@@ -33,6 +33,9 @@ PYTHON_WRAPER_TARGET="/usr/bin/ambari-python-wrap"
PYTHON_WRAPER_SOURCE="/var/lib/ambari-server/ambari-python-wrap"
do_install(){
+ rm -f /usr/sbin/ambari-server
+ ln -s /etc/init.d/ambari-server /usr/sbin/ambari-server
+
# setting ambari_commons shared resource
rm -rf "$OLD_COMMON_DIR"
if [ ! -d "$COMMON_DIR" ]; then
@@ -54,10 +57,27 @@ do_install(){
if [ ! -f "$PYTHON_WRAPER_TARGET" ]; then
ln -s "$PYTHON_WRAPER_SOURCE" "$PYTHON_WRAPER_TARGET"
fi
+
+ which chkconfig > /dev/null 2>&1
+ if [ "$?" -eq 0 ] ; then
+ chkconfig --add ambari-server
+ fi
+ which update-rc.d > /dev/null 2>&1
+ if [ "$?" -eq 0 ] ; then
+ update-rc.d ambari-server defaults
+ fi
}
do_remove(){
+ /usr/sbin/ambari-server stop > /dev/null 2>&1
+ if [ -d "/etc/ambari-server/conf.save" ]; then
+ mv /etc/ambari-server/conf.save /etc/ambari-server/conf_$(date '+%d_%m_%y_%H_%M').save
+ fi
+ # Remove link created during install
+ rm -f /usr/sbin/ambari-server
+ mv /etc/ambari-server/conf /etc/ambari-server/conf.save
+
if [ -f "$PYTHON_WRAPER_TARGET" ]; then
rm -f "$PYTHON_WRAPER_TARGET"
fi
@@ -90,20 +110,30 @@ do_remove(){
if [ -f "$INSTALL_HELPER_AGENT" ]; then # call agent shared files installer
$INSTALL_HELPER_AGENT install
fi
+
+ which chkconfig > /dev/null 2>&1
+ if [ "$?" -eq 0 ] ; then
+ chkconfig --list | grep ambari-server && chkconfig --del ambari-server
+ fi
+ which update-rc.d > /dev/null 2>&1
+ if [ "$?" -eq 0 ] ; then
+ update-rc.d -f ambari-server remove
+ fi
}
do_upgrade(){
+ # this function only gets called for rpm. Deb packages always call do_install directly.
do_install
}
case "$1" in
-install)
- do_install
- ;;
-remove)
- do_remove
- ;;
-upgrade)
- do_upgrade
- ;;
+ install)
+ do_install
+ ;;
+ remove)
+ do_remove
+ ;;
+ upgrade)
+ do_upgrade
+ ;;
esac
http://git-wip-us.apache.org/repos/asf/ambari/blob/f6a75a60/ambari-server/src/main/assemblies/server.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/assemblies/server.xml b/ambari-server/src/main/assemblies/server.xml
index c24bce6..17d6bdb 100644
--- a/ambari-server/src/main/assemblies/server.xml
+++ b/ambari-server/src/main/assemblies/server.xml
@@ -200,7 +200,7 @@
</file>
<file>
<fileMode>755</fileMode>
- <source>sbin/ambari-server</source>
+ <source>${basedir}/target/ambari-server</source>
<outputDirectory>/etc/init.d</outputDirectory>
</file>
<file>
http://git-wip-us.apache.org/repos/asf/ambari/blob/f6a75a60/ambari-server/src/main/package/deb/control/postinst
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/package/deb/control/postinst b/ambari-server/src/main/package/deb/control/postinst
index c3b6235..e8d12c3 100644
--- a/ambari-server/src/main/package/deb/control/postinst
+++ b/ambari-server/src/main/package/deb/control/postinst
@@ -14,18 +14,12 @@
# See the License for the specific language governing permissions and
# limitations under the License
-if [ -e "/usr/sbin/ambari-server" ]; then # Check is needed for upgrade
- # Remove link created by previous package version
- rm -f /usr/sbin/ambari-server
-fi
-
-ln -s /etc/init.d/ambari-server /usr/sbin/ambari-server
+# Warning: don't add changes to this script directly, please add changes to install-helper.sh.
-if [ "$1" == "configure" ]; then # Action is install
+if [ "$1" == "configure" ] ; then
if [ -f "/var/lib/ambari-server/install-helper.sh" ]; then
/var/lib/ambari-server/install-helper.sh install
fi
- update-rc.d ambari-server defaults
fi
exit 0
http://git-wip-us.apache.org/repos/asf/ambari/blob/f6a75a60/ambari-server/src/main/package/deb/control/posttrm
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/package/deb/control/posttrm b/ambari-server/src/main/package/deb/control/posttrm
deleted file mode 100644
index 21a01fa..0000000
--- a/ambari-server/src/main/package/deb/control/posttrm
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/bash
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License
http://git-wip-us.apache.org/repos/asf/ambari/blob/f6a75a60/ambari-server/src/main/package/deb/control/prerm
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/package/deb/control/prerm b/ambari-server/src/main/package/deb/control/prerm
index 927ba4c..98e3be5 100644
--- a/ambari-server/src/main/package/deb/control/prerm
+++ b/ambari-server/src/main/package/deb/control/prerm
@@ -14,26 +14,12 @@
# See the License for the specific language governing permissions and
# limitations under the License
+# Warning: don't add changes to this script directly, please add changes to install-helper.sh.
-
-if [ "$1" == "remove" ]; then # Action is uninstall
- /usr/sbin/ambari-server stop > /dev/null 2>&1
- if [ -d "/etc/ambari-server/conf.save" ]; then
- mv /etc/ambari-server/conf.save /etc/ambari-server/conf_$(date '+%d_%m_%y_%H_%M').save
- fi
-
- if [ -e "/usr/sbin/ambari-server" ]; then
- # Remove link created during install
- rm /usr/sbin/ambari-server
- fi
-
- mv /etc/ambari-server/conf /etc/ambari-server/conf.save
-
+if [ "$1" == "remove" ] ; then # Action is uninstall
if [ -f "/var/lib/ambari-server/install-helper.sh" ]; then
/var/lib/ambari-server/install-helper.sh remove
fi
-
- update-rc.d -f ambari-server remove
fi
exit 0
http://git-wip-us.apache.org/repos/asf/ambari/blob/f6a75a60/ambari-server/src/main/package/rpm/postinstall.sh
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/package/rpm/postinstall.sh b/ambari-server/src/main/package/rpm/postinstall.sh
index 9b0b54a..5ca1d17 100644
--- a/ambari-server/src/main/package/rpm/postinstall.sh
+++ b/ambari-server/src/main/package/rpm/postinstall.sh
@@ -13,19 +13,13 @@
# See the License for the specific language governing permissions and
# limitations under the License
-if [ -e "/usr/sbin/ambari-server" ]; then # Check is needed for upgrade
- # Remove link created by previous package version
- rm -f /usr/sbin/ambari-server
-fi
-
-ln -s /etc/init.d/ambari-server /usr/sbin/ambari-server
+# Warning: don't add changes to this script directly, please add changes to install-helper.sh.
case "$1" in
1) # Action install
if [ -f "/var/lib/ambari-server/install-helper.sh" ]; then
/var/lib/ambari-server/install-helper.sh install
fi
- chkconfig --add ambari-server
;;
2) # Action upgrade
if [ -f "/var/lib/ambari-server/install-helper.sh" ]; then
http://git-wip-us.apache.org/repos/asf/ambari/blob/f6a75a60/ambari-server/src/main/package/rpm/preremove.sh
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/package/rpm/preremove.sh b/ambari-server/src/main/package/rpm/preremove.sh
index 6febaa8..445e9ad 100644
--- a/ambari-server/src/main/package/rpm/preremove.sh
+++ b/ambari-server/src/main/package/rpm/preremove.sh
@@ -17,24 +17,12 @@
# during package update. See http://www.ibm.com/developerworks/library/l-rpm2/
# for details
-if [ "$1" -eq 0 ]; then # Action is uninstall
- /usr/sbin/ambari-server stop > /dev/null 2>&1
- if [ -d "/etc/ambari-server/conf.save" ]; then
- mv /etc/ambari-server/conf.save /etc/ambari-server/conf_$(date '+%d_%m_%y_%H_%M').save
- fi
-
- if [ -e "/usr/sbin/ambari-server" ]; then
- # Remove link created during install
- rm /usr/sbin/ambari-server
- fi
-
- mv /etc/ambari-server/conf /etc/ambari-server/conf.save
+# Warning: don't add changes to this script directly, please add changes to install-helper.sh.
+if [ "$1" -eq 0 ]; then # Action is uninstall
if [ -f "/var/lib/ambari-server/install-helper.sh" ]; then
/var/lib/ambari-server/install-helper.sh remove
fi
-
- chkconfig --list | grep ambari-server && chkconfig --del ambari-server
fi
-exit 0
+exit 0
\ No newline at end of file