tdengine.spec 4.9 KB
Newer Older
H
hzcheng 已提交
1 2
%define homepath         /usr/local/taos
%define cfg_install_dir  /etc/taos
H
huili 已提交
3
%define __strip /bin/true
H
hzcheng 已提交
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41

Name:		  tdengine
Version:	%{_version}
Release:	3%{?dist}
Summary:	tdengine from taosdata
Group:	  Application/Database
License:	AGPL
URL:		  www.taosdata.com

#BuildRoot:  %_topdir/BUILDROOT
BuildRoot:   %{_tmppath}/%{name}-%{version}-%{release}-root 

#Prefix: /usr/local/taos

#BuildRequires:	
#Requires:	

%description
Big Data Platform Designed and Optimized for IoT

#"prep" Nothing needs to be done 
#%prep
#%setup -q
#%setup -T 

#"build" Nothing needs to be done 
#%build
#%configure
#make %{?_smp_mflags}

%install
#make install DESTDIR=%{buildroot}
rm -rf %{buildroot}

echo topdir: %{_topdir}
echo version: %{_version}
echo buildroot: %{buildroot}

S
slguan 已提交
42
versioninfo=$(%{_compiledir}/../packaging/tools/get_version.sh ../../src/util/src/version.c)
H
huili 已提交
43 44
libfile="libtaos.so.${versioninfo}"

H
hzcheng 已提交
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
# create install path, and cp file
mkdir -p %{buildroot}%{homepath}/bin
mkdir -p %{buildroot}%{homepath}/cfg
mkdir -p %{buildroot}%{homepath}/connector
mkdir -p %{buildroot}%{homepath}/driver
mkdir -p %{buildroot}%{homepath}/examples
mkdir -p %{buildroot}%{homepath}/include
mkdir -p %{buildroot}%{homepath}/init.d
mkdir -p %{buildroot}%{homepath}/script

cp %{_compiledir}/../packaging/cfg/taos.cfg         %{buildroot}%{homepath}/cfg
cp %{_compiledir}/../packaging/rpm/taosd            %{buildroot}%{homepath}/init.d
cp %{_compiledir}/../packaging/tools/post.sh        %{buildroot}%{homepath}/script
cp %{_compiledir}/../packaging/tools/preun.sh       %{buildroot}%{homepath}/script
cp %{_compiledir}/build/bin/taos                    %{buildroot}%{homepath}/bin
60
cp %{_compiledir}/build/bin/taosd                   %{buildroot}%{homepath}/bin
S
slguan 已提交
61
cp %{_compiledir}/build/bin/taosdemo                %{buildroot}%{homepath}/bin
62
cp %{_compiledir}/build/bin/taosdump                %{buildroot}%{homepath}/bin
H
huili 已提交
63
cp %{_compiledir}/build/lib/${libfile}              %{buildroot}%{homepath}/driver
H
hzcheng 已提交
64 65 66 67 68 69 70 71 72
cp %{_compiledir}/../src/inc/taos.h                 %{buildroot}%{homepath}/include
cp -r %{_compiledir}/../src/connector/grafana       %{buildroot}%{homepath}/connector
cp -r %{_compiledir}/../src/connector/python        %{buildroot}%{homepath}/connector
cp -r %{_compiledir}/../src/connector/go            %{buildroot}%{homepath}/connector
cp %{_compiledir}/build/lib/taos-jdbcdriver*dist.*  %{buildroot}%{homepath}/connector
cp -r %{_compiledir}/../tests/examples/*            %{buildroot}%{homepath}/examples

#Scripts executed before installation
%pre
P
plum-lihui 已提交
73 74 75 76 77
csudo=""
if command -v sudo > /dev/null; then
    csudo="sudo"
fi

H
hzcheng 已提交
78 79
# Stop the service if running
if pidof taosd &> /dev/null; then
H
[NONE]  
huili 已提交
80
    if pidof systemd &> /dev/null; then
P
plum-lihui 已提交
81
        ${csudo} systemctl stop taosd || :
H
[NONE]  
huili 已提交
82
    elif $(which insserv &> /dev/null); then
P
plum-lihui 已提交
83
        ${csudo} service taosd stop || :
H
[NONE]  
huili 已提交
84 85 86 87 88
    elif $(which update-rc.d &> /dev/null); then
        ${csudo} service taosd stop || :
    else
        pid=$(ps -ef | grep "taosd" | grep -v "grep" | awk '{print $2}')
        ${csudo} kill -9 ${pid}   || :
H
hzcheng 已提交
89 90 91 92 93 94 95
    fi
    echo "Stop taosd service success!"
    sleep 1
fi

# if taos.cfg already softlink, remove it
if [ -f %{cfg_install_dir}/taos.cfg ]; then
P
plum-lihui 已提交
96
    ${csudo} rm -f %{homepath}/cfg/taos.cfg   || :
H
hzcheng 已提交
97 98
fi 

H
[NONE]  
huili 已提交
99 100
# there can not libtaos.so*, otherwise ln -s  error
${csudo} rm -f %{homepath}/driver/libtaos*   || :
H
huili 已提交
101

H
hzcheng 已提交
102 103
#Scripts executed after installation
%post
P
plum-lihui 已提交
104 105 106 107
csudo=""
if command -v sudo > /dev/null; then
    csudo="sudo"
fi
H
hzcheng 已提交
108
cd %{homepath}/script
P
plum-lihui 已提交
109
${csudo} ./post.sh
H
hzcheng 已提交
110 111 112
 
# Scripts executed before uninstall
%preun
P
plum-lihui 已提交
113 114 115 116
csudo=""
if command -v sudo > /dev/null; then
    csudo="sudo"
fi
H
hzcheng 已提交
117 118
# only remove package to call preun.sh, not but update(2) 
if [ $1 -eq 0 ];then
H
[NONE]  
huili 已提交
119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148
  #cd %{homepath}/script
  #${csudo} ./preun.sh
  
  if [ -f %{homepath}/script/preun.sh ]; then
    cd %{homepath}/script
    ${csudo} ./preun.sh
  else
    bin_link_dir="/usr/bin"
    lib_link_dir="/usr/lib"
    inc_link_dir="/usr/include"
    
    data_link_dir="/usr/local/taos/data"
    log_link_dir="/usr/local/taos/log"
    cfg_link_dir="/usr/local/taos/cfg"

    # Remove all links
    ${csudo} rm -f ${bin_link_dir}/taos       || :
    ${csudo} rm -f ${bin_link_dir}/taosd      || :
    ${csudo} rm -f ${bin_link_dir}/taosdemo   || :
    ${csudo} rm -f ${bin_link_dir}/taosdump   || :
    ${csudo} rm -f ${cfg_link_dir}/*          || :
    ${csudo} rm -f ${inc_link_dir}/taos.h     || :
    ${csudo} rm -f ${lib_link_dir}/libtaos.*  || :
    
    ${csudo} rm -f ${log_link_dir}            || :
    ${csudo} rm -f ${data_link_dir}           || :
    
    pid=$(ps -ef | grep "taosd" | grep -v "grep" | awk '{print $2}')
    ${csudo} kill -9 ${pid}   || :      
  fi  
H
hzcheng 已提交
149 150 151 152 153 154 155
fi
 
# Scripts executed after uninstall
%postun
 
# clean build dir
%clean
P
plum-lihui 已提交
156 157 158 159 160
csudo=""
if command -v sudo > /dev/null; then
    csudo="sudo"
fi
${csudo} rm -rf %{buildroot}
H
hzcheng 已提交
161 162 163 164 165 166 167 168 169 170 171

#Specify the files to be packaged
%files
/*
#%doc

#Setting default permissions
%defattr  (-,root,root,0755)
#%{prefix}

#%changelog