add: 打包脚本
This commit is contained in:
199
build/rpmbuild/SPECS/omc.spec
Normal file
199
build/rpmbuild/SPECS/omc.spec
Normal file
@@ -0,0 +1,199 @@
|
||||
%define __check_files %{nil}
|
||||
%define __spec_build_pre %{nil}
|
||||
%define __arch_install_post %{nil}
|
||||
%define release_version 1
|
||||
%define release_date %(echo `date +%%Y%%m%%d`)
|
||||
%define project_lname omc
|
||||
%define project_Uname OMC
|
||||
|
||||
Name: %{project_lname}
|
||||
Summary: AGrandTech 5GC OMC
|
||||
Version: 2.2402.5
|
||||
Release: %{release_date}
|
||||
Vendor: AGrandTech
|
||||
URL: https://www.agrandtech.com/
|
||||
License: commercial
|
||||
Group: Applications/Communications
|
||||
#BuildRoot: $PWD/rpmoutput
|
||||
%description
|
||||
AGrandTech's 5GC OMC
|
||||
|
||||
%prep
|
||||
rm -rf ${RPM_BUILD_ROOT}/*
|
||||
#rm -rf ${RPM_BUILD_ROOT}/lib
|
||||
#rm -rf ${RPM_BUILD_ROOT}/usr
|
||||
mkdir -p ${RPM_BUILD_ROOT}
|
||||
cd ${RPM_BUILD_ROOT}
|
||||
#mkdir -p usr/local/omc/
|
||||
#mkdir -p usr/local/db/
|
||||
#mkdir -p etc/nginx/conf.d
|
||||
#mkdir -p lib/systemd/system/
|
||||
|
||||
#cd ${RPM_BUILD_DIR}
|
||||
cp -rf ${RPM_BUILD_DIR}/* ${RPM_BUILD_ROOT}/
|
||||
chmod +rx ${RPM_BUILD_ROOT}/usr/local/omc
|
||||
chmod +rx ${RPM_BUILD_ROOT}/usr/local/omc/*
|
||||
chmod +rx ${RPM_BUILD_ROOT}/usr/local/db/bin/*
|
||||
chmod +rx ${RPM_BUILD_ROOT}/usr/local/bin/*
|
||||
chmod -R 755 ${RPM_BUILD_ROOT}/usr/local/omc/htdocs/front
|
||||
chmod +rx ${RPM_BUILD_ROOT}/usr/lib64/*
|
||||
#cp -rf omc/.ssh ${RPM_BUILD_ROOT}/usr/local/omc/
|
||||
#cp -rf omc/mmllog ${RPM_BUILD_ROOT}/usr/local/omc/
|
||||
#cp -rf omc/mmlhome ${RPM_BUILD_ROOT}/usr/local/omc/
|
||||
#cp -rf omc/bin ${RPM_BUILD_ROOT}/usr/local/omc/
|
||||
#cp -rf omc/etc ${RPM_BUILD_ROOT}/usr/local/omc/
|
||||
#cp -rf omc/htdocs ${RPM_BUILD_ROOT}/usr/local/omc/
|
||||
#cp -rf omc/log ${RPM_BUILD_ROOT}/usr/local/omc/
|
||||
#cp -rf omc/backup ${RPM_BUILD_ROOT}/usr/local/omc/
|
||||
#cp -rf omc/upload ${RPM_BUILD_ROOT}/usr/local/omc/
|
||||
#cp -rf omc/software ${RPM_BUILD_ROOT}/usr/local/omc/
|
||||
#cp -rf omc/license ${RPM_BUILD_ROOT}/usr/local/omc/
|
||||
#cp -rf omc/database ${RPM_BUILD_ROOT}/usr/local/omc/
|
||||
#cp -rf db/* ${RPM_BUILD_ROOT}/usr/local/db/
|
||||
#cp -f nginx/omc.conf ${RPM_BUILD_ROOT}/etc/nginx/conf.d/
|
||||
#cp -f systemd/restagent.service ${RPM_BUILD_ROOT}/lib/systemd/system/restagent.service
|
||||
#cp -f systemd/crontask.service ${RPM_BUILD_ROOT}/lib/systemd/system/crontask.service
|
||||
#cp -f systemd/sshsvc.service ${RPM_BUILD_ROOT}/lib/systemd/system/sshsvc.service
|
||||
#cp -f systemd/captrace.service ${RPM_BUILD_ROOT}/lib/systemd/system/captrace.service
|
||||
#cp -f systemd/adb.service ${RPM_BUILD_ROOT}/lib/systemd/system/adb.service
|
||||
|
||||
%build
|
||||
#cd %{buildroot}/..
|
||||
#make
|
||||
|
||||
# 安装完成后执行
|
||||
%post
|
||||
RedisConfDir=/usr/local/db/bin/conf
|
||||
OMCEtcDir=/usr/local/omc/etc
|
||||
FERootDir=/usr/local/omc/htdocs/front
|
||||
UsrLib64Dir=/usr/lib64
|
||||
OmcBinDir=/usr/local/omc/bin
|
||||
OMCStaticDir=/usr/local/omc/static
|
||||
UsrLocalBinDir=/usr/local/bin
|
||||
OmcDaemon=omcd
|
||||
NginxEtcDir=/etc/nginx
|
||||
CFileList="restconf.yaml crontask.yaml tasks.yaml sshsvc.yaml capconf.yaml"
|
||||
LogoFileList="zh_brand.png zh_icon.png en_brand.png en_icon.png"
|
||||
for CFile in ${CFileList}; do
|
||||
if [ ! -e "${OMCEtcDir}/${CFile}" ]; then
|
||||
cp ${OMCEtcDir}/default/${CFile} ${OMCEtcDir};
|
||||
fi
|
||||
done
|
||||
if [ ! -e "${RedisConfDir}/redis.conf" ]; then
|
||||
cp ${RedisConfDir}/default/redis.conf ${RedisConfDir};
|
||||
else
|
||||
sed -i 's/replica-read-only yes/replica-read-only no/g' ${RedisConfDir}/redis.conf
|
||||
fi
|
||||
if [ ! -e "${FERootDir}/config.js" ]; then cp ${FERootDir}/default/config.js ${FERootDir}; fi
|
||||
for LogoFile in ${LogoFileList}; do
|
||||
if [ ! -e "${OMCStaticDir}/logo/${LogoFile}" ]; then
|
||||
cp ${OMCStaticDir}/agt.d/logo/${LogoFile} ${OMCStaticDir}/logo;
|
||||
fi
|
||||
done
|
||||
if ! id -u omc >/dev/null 2>&1 ; then useradd -d /opt/omc -m -s /bin/bash -p1000ftp@kp omc; else echo "user omc exist"; fi
|
||||
mkdir -p /opt/omc/ftp
|
||||
mkdir -p /opt/omc/ftp/log
|
||||
#chmod +rx /usr/local/omc
|
||||
#chmod +rx /usr/local/omc/*
|
||||
#chmod +rx /usr/local/db/bin/*
|
||||
#chmod +rx /usr/local/bin/*
|
||||
#chmod -R 755 /usr/local/omc/htdocs/front
|
||||
cd ${UsrLib64Dir}
|
||||
if [ ! -e libwireshark.so.15 ]; then ln -s libwireshark.so.15.0.12 libwireshark.so.15; fi
|
||||
if [ ! -e libwireshark.so ]; then ln -s libwireshark.so.15.0.12 libwireshark.so; fi
|
||||
if [ ! -e libwiretap.so.12 ]; then ln -s libwiretap.so.12.0.12 libwiretap.so.12; fi
|
||||
if [ ! -e libwiretap.so ]; then ln -s libwiretap.so.12.0.12 libwiretap.so; fi
|
||||
if [ ! -e libwsutil.so.13 ]; then ln -s libwsutil.so.13.1.0 libwsutil.so.13; fi
|
||||
if [ ! -e libwsutil.so ]; then ln -s libwsutil.so.13.1.0 libwsutil.so; fi
|
||||
cd ${UsrLocalBinDir}
|
||||
if [ ! -e ${OmcDaemon} ]; then ln -s ${OmcBinDir}/omcsvc.sh ${OmcDaemon}; fi
|
||||
sed -i 's/listen 80;/listen 1080;/g' ${NginxEtcDir}/nginx.conf
|
||||
sed -i 's/listen \[::\]:80;/listen \[::\]:1080;/g' ${NginxEtcDir}/nginx.conf
|
||||
systemctl daemon-reload
|
||||
systemctl enable restagent.service
|
||||
systemctl enable crontask.service
|
||||
systemctl enable sshsvc.service
|
||||
systemctl enable captrace.service
|
||||
systemctl enable adb.service
|
||||
systemctl stop restagent.service
|
||||
systemctl stop crontask.service
|
||||
systemctl stop sshsvc.service
|
||||
systemctl stop captrace.service
|
||||
systemctl stop nginx.service
|
||||
systemctl stop adb.service
|
||||
systemctl start adb.service
|
||||
systemctl start nginx.service
|
||||
systemctl start captrace.service
|
||||
systemctl start sshsvc.service
|
||||
systemctl start crontask.service
|
||||
systemctl start restagent.service
|
||||
|
||||
# 卸载时执行
|
||||
%postun
|
||||
UsrLib64Dir=/usr/lib64
|
||||
cd ${UsrLib64Dir}
|
||||
rm libwireshark.so.15
|
||||
rm libwireshark.so
|
||||
rm libwiretap.so.12
|
||||
rm libwiretap.so
|
||||
rm libwsutil.so.13
|
||||
rm libwsutil.so
|
||||
if [ "$1" = "0" ] ; then
|
||||
sudo systemctl stop restagent.service
|
||||
sudo systemctl stop crontask.service
|
||||
sudo systemctl stop sshsvc.service
|
||||
sudo systemctl stop captrace.service
|
||||
sudo systemctl stop adb.service
|
||||
sudo systemctl stop nginx.service
|
||||
#rm -rf /usr/local/omc
|
||||
rm -rf /etc/nginx/conf.d/omc.conf
|
||||
sudo systemctl disable restagent.service
|
||||
sudo systemctl disable crontask.service
|
||||
sudo systemctl disable sshsvc.service
|
||||
sudo systemctl disable captrace.service
|
||||
sudo systemctl disable adb.service
|
||||
sudo systemctl daemon-reload
|
||||
else
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl stop nginx.service
|
||||
sudo systemctl stop restagent.service
|
||||
sudo systemctl stop crontask.service
|
||||
sudo systemctl stop sshsvc.service
|
||||
sudo systemctl stop captrace.service
|
||||
sudo systemctl stop adb.service
|
||||
sudo systemctl start nginx.service
|
||||
sudo systemctl start adb.service
|
||||
sudo systemctl start crontask.service
|
||||
sudo systemctl start sshsvc.service
|
||||
sudo systemctl start captrace.service
|
||||
sudo systemctl start restagent.service
|
||||
fi
|
||||
|
||||
# 规定那些文件必须放入安装程序中,如果没有就报错
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
/usr/local/omc/.ssh
|
||||
/usr/local/omc/mmllog
|
||||
/usr/local/omc/mmlhome
|
||||
/usr/local/omc/bin
|
||||
/usr/local/omc/etc
|
||||
/usr/local/omc/htdocs
|
||||
/usr/local/omc/log
|
||||
/usr/local/omc/backup
|
||||
/usr/local/omc/upload
|
||||
/usr/local/omc/software
|
||||
/usr/local/omc/license
|
||||
/usr/local/omc/database
|
||||
/usr/local/omc/static
|
||||
/usr/local/db
|
||||
/etc/nginx/conf.d/omc.conf
|
||||
/lib/systemd/system/restagent.service
|
||||
/lib/systemd/system/crontask.service
|
||||
/lib/systemd/system/sshsvc.service
|
||||
/lib/systemd/system/captrace.service
|
||||
/lib/systemd/system/adb.service
|
||||
/usr/lib64/libwireshark.so.15.0.12
|
||||
/usr/lib64/libwiretap.so.12.0.12
|
||||
/usr/lib64/libwsutil.so.13.1.0
|
||||
/usr/local/bin/tshark
|
||||
|
||||
Reference in New Issue
Block a user