You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@bigtop.apache.org by se...@apache.org on 2022/09/13 04:17:19 UTC

[bigtop] branch master updated: BIGTOP-3798: Support parent directory configuration for Zeppelin rpm build script (#997)

This is an automated email from the ASF dual-hosted git repository.

sekikn pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/bigtop.git


The following commit(s) were added to refs/heads/master by this push:
     new 3c8b7060 BIGTOP-3798: Support parent directory configuration for Zeppelin rpm build script (#997)
3c8b7060 is described below

commit 3c8b706046262133827a39bcac4d00c4efb12569
Author: Zhiguo Wu <wu...@apache.org>
AuthorDate: Tue Sep 13 12:17:14 2022 +0800

    BIGTOP-3798: Support parent directory configuration for Zeppelin rpm build script (#997)
---
 .../src/common/zeppelin/install_zeppelin.sh        | 47 ++++++++++--------
 .../src/rpm/zeppelin/SPECS/zeppelin.spec           | 56 +++++++++++++---------
 2 files changed, 60 insertions(+), 43 deletions(-)

diff --git a/bigtop-packages/src/common/zeppelin/install_zeppelin.sh b/bigtop-packages/src/common/zeppelin/install_zeppelin.sh
index b100d54d..cc05bf19 100644
--- a/bigtop-packages/src/common/zeppelin/install_zeppelin.sh
+++ b/bigtop-packages/src/common/zeppelin/install_zeppelin.sh
@@ -28,8 +28,9 @@ usage: $0 <options>
   Optional options:
      --doc-dir=DIR               path to install docs into [/usr/share/doc/zeppelin]
      --lib-dir=DIR               path to install Zeppelin home [/usr/lib/zeppelin]
-     --installed-lib-dir=DIR     path where lib-dir will end up on target system
-     --bin-dir=DIR               path to install bins [/usr/bin]
+     --var-dir=DIR               path to install Zeppelin home [/var/lib/zeppelin]
+     --man-dir=DIR               path to install mans [/usr/share/man]
+     --conf-dist-dir=DIR         path to install conf dist dir [/etc/zeppelin/conf.dist]
      ... [ see source for more similar options ]
   "
   exit 1
@@ -41,8 +42,9 @@ OPTS=$(getopt \
   -l 'prefix:' \
   -l 'doc-dir:' \
   -l 'lib-dir:' \
-  -l 'installed-lib-dir:' \
-  -l 'bin-dir:' \
+  -l 'var-dir:' \
+  -l 'man-dir:' \
+  -l 'conf-dist-dir:' \
   -l 'source-dir:' \
   -l 'build-dir:' -- "$@")
 
@@ -68,11 +70,14 @@ while true ; do
         --lib-dir)
         LIB_DIR=$2 ; shift 2
         ;;
-        --installed-lib-dir)
-        INSTALLED_LIB_DIR=$2 ; shift 2
+        --var-dir)
+        VAR_DIR=$2 ; shift 2
         ;;
-        --bin-dir)
-        BIN_DIR=$2 ; shift 2
+        --man-dir)
+        MAN_DIR=$2 ; shift 2
+        ;;
+        --conf-dist-dir)
+        CONF_DIST_DIR=$2 ; shift 2
         ;;
         --)
         shift ; break
@@ -96,34 +101,36 @@ if [ -f "$SOURCE_DIR/bigtop.bom" ]; then
   . $SOURCE_DIR/bigtop.bom
 fi
 
-MAN_DIR=${MAN_DIR:-/usr/share/man/man1}
+MAN_DIR=${MAN_DIR:-/usr/share/man}/man1
 DOC_DIR=${DOC_DIR:-/usr/share/doc/zeppelin}
 LIB_DIR=${LIB_DIR:-/usr/lib/zeppelin}
-INSTALLED_LIB_DIR=${INSTALLED_LIB_DIR:-/usr/lib/zeppelin}
-BIN_DIR=${BIN_DIR:-/usr/bin}
-CONF_DIR=${CONF_DIR:-/etc/zeppelin/conf.dist}
+VAR_DIR=${VAR_DIR:-/var/lib/zeppelin}
+
+CONF_DIR=/etc/zeppelin/conf
+CONF_DIST_DIR=${CONF_DIST_DIR:-/etc/zeppelin/conf.dist}
 
 install -d -m 0755 $PREFIX/$LIB_DIR
 install -d -m 0755 $PREFIX/$LIB_DIR/bin
 install -d -m 0755 $PREFIX/$LIB_DIR/lib
 install -d -m 0755 $PREFIX/$LIB_DIR/plugins
-install -d -m 0755 $PREFIX/$CONF_DIR
+install -d -m 0755 $PREFIX/etc/zeppelin
+install -d -m 0755 $PREFIX/$CONF_DIST_DIR
 install -d -m 0755 $PREFIX/$DOC_DIR
 
-install -d -m 0755 $PREFIX/var/lib/zeppelin/
-install -d -m 0755 $PREFIX/var/lib/zeppelin/notebook/
+install -d -m 0755 $PREFIX/$VAR_DIR
+install -d -m 0755 $PREFIX/$VAR_DIR/notebook/
 install -d -m 0755 $PREFIX/var/log/zeppelin/
 install -d -m 0755 $PREFIX/var/run/zeppelin/
 install -d -m 0755 $PREFIX/var/run/zeppelin/webapps
 
 cp -a ${BUILD_DIR}/build/dist/{bin,interpreter,lib,plugins,zeppelin-web-${ZEPPELIN_VERSION}.war} $PREFIX/$LIB_DIR/
 cp -a ${BUILD_DIR}/build/dist/{LICENSE,NOTICE,README.md,licenses} $PREFIX/$DOC_DIR
-cp -a ${BUILD_DIR}/build/dist/conf/* $PREFIX/$CONF_DIR
-cp -a ${BUILD_DIR}/build/dist/notebook $PREFIX/var/lib/zeppelin/
+cp -a ${BUILD_DIR}/build/dist/conf/* $PREFIX/$CONF_DIST_DIR
+cp -a ${BUILD_DIR}/build/dist/notebook $PREFIX/$VAR_DIR/
 
 rm -f $PREFIX/$LIB_DIR/bin/*.cmd
 chmod 755 $PREFIX/$LIB_DIR/bin/*
 
-rm -f $PREFIX/$CONF_DIR/*.cmd.*
-cp -a ${SOURCE_DIR}/zeppelin-env.sh $PREFIX/$CONF_DIR
-ln -s /etc/zeppelin/conf $PREFIX/$LIB_DIR/conf
+rm -f $PREFIX/$CONF_DIST_DIR/*.cmd.*
+cp -a ${SOURCE_DIR}/zeppelin-env.sh $PREFIX/$CONF_DIST_DIR
+ln -s $CONF_DIR $PREFIX/$LIB_DIR/conf
diff --git a/bigtop-packages/src/rpm/zeppelin/SPECS/zeppelin.spec b/bigtop-packages/src/rpm/zeppelin/SPECS/zeppelin.spec
index 64248f28..c4746022 100644
--- a/bigtop-packages/src/rpm/zeppelin/SPECS/zeppelin.spec
+++ b/bigtop-packages/src/rpm/zeppelin/SPECS/zeppelin.spec
@@ -13,21 +13,26 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-%define lib_zeppelin /usr/lib/%{name}
-%define var_lib_zeppelin /var/lib/%{name}
-%define var_run_zeppelin /var/run/%{name}
-%define var_log_zeppelin /var/log/%{name}
-%define bin_zeppelin /usr/lib/%{name}/bin
-%define etc_zeppelin /etc/%{name}
-%define config_zeppelin %{etc_zeppelin}/conf
-%define bin /usr/bin
-%define man_dir /usr/share/man
+%define etc_default %{parent_dir}/etc/default
+
+%define usr_lib_zeppelin %{parent_dir}/usr/lib/%{name}
+%define var_lib_zeppelin %{parent_dir}/var/lib/%{name}
+%define etc_zeppelin_conf_dist %{parent_dir}/etc/%{name}/conf.dist
+
+%define man_dir %{parent_dir}/%{_mandir}
+%define doc_dir %{parent_dir}/%{_docdir}
+%define lib_dir %{parent_dir}/%{_libdir}
+
+# No prefix directory
+%define np_var_log_zeppelin /var/log/%{name}
+%define np_var_run_zeppelin /var/run/%{name}
+%define np_etc_zeppelin /etc/%{name}
 
 %if  %{?suse_version:1}0
-%define doc_zeppelin %{_docdir}/%{name}
+%define doc_zeppelin %{doc_dir}/%{name}
 %define alternatives_cmd update-alternatives
 %else
-%define doc_zeppelin %{_docdir}/%{name}-%{zeppelin_version}
+%define doc_zeppelin %{doc_dir}/%{name}-%{zeppelin_version}
 %define alternatives_cmd alternatives
 %endif
 
@@ -93,7 +98,11 @@ bash $RPM_SOURCE_DIR/install_zeppelin.sh \
   --build-dir=`pwd`         \
   --source-dir=$RPM_SOURCE_DIR \
   --prefix=$RPM_BUILD_ROOT  \
-  --doc-dir=%{doc_zeppelin}
+  --doc-dir=%{doc_zeppelin} \
+  --lib-dir=%{usr_lib_zeppelin} \
+  --var-dir=%{var_lib_zeppelin} \
+  --man-dir=%{man_dir} \
+  --conf-dist-dir=%{etc_zeppelin_conf_dist}
 
 # Install init script
 initd_script=$RPM_BUILD_ROOT/%{initd_dir}/%{name}
@@ -104,12 +113,12 @@ getent group zeppelin >/dev/null || groupadd -r zeppelin
 getent passwd zeppelin >/dev/null || useradd -c "Zeppelin" -s /sbin/nologin -g zeppelin -r -d %{var_lib_zeppelin} zeppelin 2> /dev/null || :
 
 %post
-%{alternatives_cmd} --install %{config_zeppelin} %{name}-conf %{config_zeppelin}.dist 30
+%{alternatives_cmd} --install %{np_etc_zeppelin}/conf %{name}-conf %{etc_zeppelin_conf_dist} 30
 chkconfig --add %{name}
 
 %preun
 if [ "$1" = 0 ]; then
-  %{alternatives_cmd} --remove %{name}-conf %{config_zeppelin}.dist || :
+  %{alternatives_cmd} --remove %{name}-conf %{etc_zeppelin_conf_dist} || :
 fi
 
 /sbin/service %{name} status > /dev/null 2>&1
@@ -124,14 +133,15 @@ chkconfig --del %{name}
 %files
 %defattr(-,root,root,755)
 %doc %{doc_zeppelin}
-%{lib_zeppelin}/*.war
-%{lib_zeppelin}/bin
-%{lib_zeppelin}/plugins
-%{lib_zeppelin}/conf
-%{lib_zeppelin}/interpreter
-%{lib_zeppelin}/lib
-%config(noreplace) %attr(0755,zeppelin,zeppelin) %{etc_zeppelin}
+%{usr_lib_zeppelin}/*.war
+%{usr_lib_zeppelin}/bin
+%{usr_lib_zeppelin}/plugins
+%{usr_lib_zeppelin}/conf
+%{usr_lib_zeppelin}/interpreter
+%{usr_lib_zeppelin}/lib
+%config(noreplace) %attr(0755,zeppelin,zeppelin) %{etc_zeppelin_conf_dist}
+%attr(0755,zeppelin,zeppelin) %{np_etc_zeppelin}
 %attr(0755,zeppelin,zeppelin) %{var_lib_zeppelin}
-%attr(0755,zeppelin,zeppelin) %{var_run_zeppelin}
-%attr(0755,zeppelin,zeppelin) %{var_log_zeppelin}
+%attr(0755,zeppelin,zeppelin) %{np_var_run_zeppelin}
+%attr(0755,zeppelin,zeppelin) %{np_var_log_zeppelin}
 %attr(0755,root,root)/%{initd_dir}/%{name}