base
This commit is contained in:
Executable
+29
@@ -0,0 +1,29 @@
|
||||
#!/bin/sh
|
||||
|
||||
# 작업 폴더 정보
|
||||
# - 버전 정보 변경시 수정할 것.
|
||||
MAJOR_VERSION=rcdb-9.3.17
|
||||
|
||||
|
||||
SVNURL=http://svn.solbox.com/svn/interactive
|
||||
|
||||
LOCAL_PATH=/root/work/rcdb_files
|
||||
|
||||
|
||||
# 이전 작업 폴더 삭제
|
||||
rm -rf $LOCAL_PATH/rcdb*
|
||||
|
||||
# 신규 작업폴더 생성
|
||||
mkdir $LOCAL_PATH/$MAJOR_VERSION
|
||||
|
||||
|
||||
# SVN 에서 파일 다운로드 수행
|
||||
# - pgsql 다운로드시 버전 정보 수정 할 것.
|
||||
|
||||
./getlastsvn.sh "FILE" "$SVNURL" "/tags/release/RCDB" "/root/work/rcdb_files/$MAJOR_VERSION/" "conf_sample.tar" "" ""
|
||||
./getlastsvn.sh "FILE" "$SVNURL" "/tags/release/RCDB" "/root/work/rcdb_files/$MAJOR_VERSION/" "create_RCDB.sh" "" ""
|
||||
./getlastsvn.sh "FILE" "$SVNURL" "/tags/release/RCDB" "/root/work/rcdb_files/$MAJOR_VERSION/" "get_load.sh" "" ""
|
||||
./getlastsvn.sh "FILE" "$SVNURL" "/tags/release/RCDB" "/root/work/rcdb_files/$MAJOR_VERSION/" "rcdb_schema.sql" "" ""
|
||||
./getlastsvn.sh "FILE" "$SVNURL" "/tags/release/RCDB" "/root/work/rcdb_files/$MAJOR_VERSION/" "RcdbFailover" "" ""
|
||||
./getlastsvn.sh "FILE" "$SVNURL" "/tags/release/RCDB" "/root/work/rcdb_files/$MAJOR_VERSION/" "report.sh" "" ""
|
||||
./getlastsvn.sh "FILE" "$SVNURL" "/tags/release/RCDB" "/root/work/rcdb_files/$MAJOR_VERSION/" "pgsql.9.3.17.tar.gz" "" ""
|
||||
Executable
+131
@@ -0,0 +1,131 @@
|
||||
#!/bin/sh
|
||||
|
||||
MODE=$1
|
||||
SVN_HOME=$2
|
||||
SRC_PATH=$3
|
||||
DSE_PATH=$4
|
||||
FILE_NAME=$5
|
||||
FILE_EXT=$6
|
||||
KEY_EXT=$7
|
||||
KEY_EXC=$8
|
||||
|
||||
mkdir -p $DSE_PATH
|
||||
|
||||
#echo "Get installation files....[$MODE][$SVN_HOME][$SRC_PATH][$DSE_PATH][$FILE_NAM][$FILE_EXT][$KEY_EXT][$KEY_EXC]"
|
||||
case $MODE in
|
||||
DIR) #1 dir
|
||||
LASTFILE=$SRC_PATH
|
||||
;;
|
||||
FILE) #2 file
|
||||
KEYNAME=`echo "$FILE_NAME" | sed -e "s/\./\\\\\./g"`
|
||||
echo $KEYNAME
|
||||
REVLIST=`svn log -q $SVN_HOME$SRC_PATH | grep "^r[0-9]" | awk -F"|" '{print $1}' | sed -e "s|r||g"`
|
||||
echo $REVLIST
|
||||
|
||||
for REV in $REVLIST
|
||||
do
|
||||
echo "REV:"$REV;
|
||||
echo "SVNPATH:" $SVN_HOME$SRC_PATH;
|
||||
echo "SRCPATH:" $SRC_PATH/$KEYNAME
|
||||
FILELIST=`svn log -r $REV -q -v $SVN_HOME$SRC_PATH | grep -v "D /" | grep "$SRC_PATH/$KEYNAME" | grep "$KEY_EXT" | awk '{print $2}'`
|
||||
|
||||
for v in $FILELIST
|
||||
do
|
||||
LASTFILE=$v
|
||||
if [ -n "$KEY_EXC" ]; then
|
||||
LASTFILE=`echo $LASTFILE | grep -v "$KEY_EXC"`
|
||||
fi
|
||||
|
||||
if [ -z "$LASTFILE" ]
|
||||
then
|
||||
:
|
||||
else
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
if [ -n "$KEY_EXC" ]; then
|
||||
LASTFILE=`echo $LASTFILE | grep -v "$KEY_EXC"`
|
||||
fi
|
||||
|
||||
if [ -z "$LASTFILE" ]; then
|
||||
:
|
||||
else
|
||||
break
|
||||
fi
|
||||
done
|
||||
;;
|
||||
RFILE) #3 Revision file
|
||||
KEYNAME=`echo "$FILE_NAME" | sed -e "s/\./\\\\\./g"`
|
||||
REVLIST=`svn log -q $SVN_HOME$SRC_PATH | grep "^r[0-9]" | awk -F"|" '{print $1}' | sed -e "s|r||g"`
|
||||
|
||||
for REV in $REVLIST
|
||||
do
|
||||
FILELIST=`svn log -r $REV -q -v $SVN_HOME$SRC_PATH | grep -v "D /" | grep "$SRC_PATH/$KEYNAME" | grep "$KEY_EXT" | awk '{print $2}'`
|
||||
|
||||
for v in $FILELIST
|
||||
do
|
||||
LASTFILE=$v
|
||||
if [ -n "$KEY_EXC" ]; then
|
||||
LASTFILE=`echo $LASTFILE | grep -v "$KEY_EXC"`
|
||||
fi
|
||||
|
||||
if [ -z "$LASTFILE" ]; then
|
||||
:
|
||||
else
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
if [ -n "$KEY_EXC" ]; then
|
||||
LASTFILE=`echo $LASTFILE | grep -v "$KEY_EXC"`
|
||||
fi
|
||||
|
||||
if [ -z "$LASTFILE" ]; then
|
||||
:
|
||||
else
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
arr=$(echo $LASTFILE | tr "/" "\n")
|
||||
for x in $arr
|
||||
do
|
||||
:
|
||||
done
|
||||
FILE_NAME_REV="$x"
|
||||
;;
|
||||
*) # error unkown mode
|
||||
echo "error unkown mode"
|
||||
exit 1;;
|
||||
esac
|
||||
#echo "LASTFILE=[$LASTFILE]"
|
||||
if [ -z "$LASTFILE" ]
|
||||
then
|
||||
echo "error get SVN history"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
ERR=0
|
||||
if [ -z "$FILE_NAME" ]; then
|
||||
#echo "svn export -q --force $SVN_HOME$LASTFILE $DSE_PATH"
|
||||
svn export -q --force $SVN_HOME$LASTFILE $DSE_PATH
|
||||
ERR=$?
|
||||
elif [ -n "$FILE_NAME_REV" ]; then
|
||||
#echo "svn export -q --force $SVN_HOME$LASTFILE $DSE_PATH/$FILE_NAME_REV"
|
||||
svn export -q --force $SVN_HOME$LASTFILE $DSE_PATH/$FILE_NAME_REV
|
||||
ERR=$?
|
||||
else
|
||||
#echo "svn export -q --force $SVN_HOME$LASTFILE $DSE_PATH/$FILE_NAME$FILE_EXT"
|
||||
svn export -q --force $SVN_HOME$LASTFILE $DSE_PATH/$FILE_NAME$FILE_EXT
|
||||
ERR=$?
|
||||
fi
|
||||
|
||||
if [ $ERR -ne 0 ]
|
||||
then
|
||||
echo "error get tagging file"
|
||||
exit 1
|
||||
fi
|
||||
#echo "OK"
|
||||
|
||||
|
||||
Executable
+15
@@ -0,0 +1,15 @@
|
||||
#!/bin/sh
|
||||
|
||||
# 작업 폴더 정보
|
||||
# - 버전 정보 변경시 수정할 것.
|
||||
MAJOR_VERSION=rcdb-9.3.17
|
||||
|
||||
|
||||
# 패키징 경로 상의 기존 파일 삭제 처리
|
||||
rm -f ../SOURCES/$MAJOR_VERSION.tar.gz
|
||||
|
||||
# 패키징 대상 폴더 압축 처리
|
||||
tar -czvf $MAJOR_VERSION.tar.gz ./$MAJOR_VERSION
|
||||
|
||||
# 패키징 작업 경로로 압축 파일 이동 처리
|
||||
mv -f $MAJOR_VERSION.tar.gz ../SOURCES/
|
||||
@@ -0,0 +1,66 @@
|
||||
%define _unpackaged_files_terminate_build 0
|
||||
%define _missing_doc files_terminate_build 0
|
||||
%define _topdir /root/work/
|
||||
|
||||
Summary: Solbox Cloud Storage for Linux
|
||||
Name: rcdb
|
||||
Version: 9.3.17
|
||||
Release: 1.el6
|
||||
Group: Control Servers
|
||||
Source: %{name}-%{version}.tar.gz
|
||||
BuildRoot: /root/work/BUILD
|
||||
License: Private
|
||||
Vendor: Solbox Inc,.
|
||||
Packager: storage team <storage.sd@solbox.com>
|
||||
AutoReqProv: no
|
||||
|
||||
%description
|
||||
Cloud Storage rcdb for Linux(CentOS 6.4, x86_64)
|
||||
|
||||
%prep
|
||||
%setup
|
||||
|
||||
%build
|
||||
|
||||
%install
|
||||
mkdir -p $RPM_BUILD_ROOT/user/db/pgsql
|
||||
mkdir -p $RPM_BUILD_ROOT/user/db/pgsql/script
|
||||
mkdir -p $RPM_BUILD_ROOT/user/db/pgsql/conf_sample
|
||||
mkdir -p $RPM_BUILD_ROOT/etc/ha.d/resource.d
|
||||
install -m 755 $RPM_BUILD_ROOT/%{name}-%{version}/get_load.sh $RPM_BUILD_ROOT/user/db/pgsql/script
|
||||
install -m 755 $RPM_BUILD_ROOT/%{name}-%{version}/report.sh $RPM_BUILD_ROOT/user/db/pgsql/script
|
||||
install -m 755 $RPM_BUILD_ROOT/%{name}-%{version}/create_RCDB.sh $RPM_BUILD_ROOT/user/db/pgsql/script
|
||||
install -m 755 $RPM_BUILD_ROOT/%{name}-%{version}/rcdb_schema.sql $RPM_BUILD_ROOT/user/db/pgsql/script
|
||||
install -m 755 $RPM_BUILD_ROOT/%{name}-%{version}/RcdbFailover $RPM_BUILD_ROOT/etc/ha.d/resource.d
|
||||
cp $RPM_BUILD_ROOT/%{name}-%{version}/pgsql.%{version}.tar.gz $RPM_BUILD_ROOT/user/db/
|
||||
cp $RPM_BUILD_ROOT/%{name}-%{version}/conf_sample.tar $RPM_BUILD_ROOT/user/db/pgsql/conf_sample/
|
||||
|
||||
%post
|
||||
tar xvfz $RPM_BUILD_ROOT/user/db/pgsql.%{version}.tar.gz -C /user/db/
|
||||
tar xvf $RPM_BUILD_ROOT/user/db/pgsql/conf_sample/conf_sample.tar -C /user/db/pgsql/conf_sample/
|
||||
rm -f $RPM_BUILD_ROOT/user/db/pgsql.%{version}.tar.gz
|
||||
rm -f $RPM_BUILD_ROOT/user/db/pgsql/conf_sample/conf_sample.tar
|
||||
adduser pgsql -d/user/db/pgsql
|
||||
echo -n 'thsutleo' | passwd pgsql --stdin
|
||||
chown -R pgsql:pgsql /user/db/pgsql
|
||||
chmod 600 /user/db/pgsql/conf_sample/*
|
||||
|
||||
%postun
|
||||
|
||||
%clean
|
||||
|
||||
%files
|
||||
%defattr(-, root, root)
|
||||
%doc
|
||||
|
||||
/user/db/pgsql/script/get_load.sh
|
||||
/user/db/pgsql/script/report.sh
|
||||
/user/db/pgsql/script/create_RCDB.sh
|
||||
/user/db/pgsql/script/rcdb_schema.sql
|
||||
/etc/ha.d/resource.d/RcdbFailover
|
||||
/user/db/pgsql.%{version}.tar.gz
|
||||
/user/db/pgsql/conf_sample/conf_sample.tar
|
||||
|
||||
%changelog
|
||||
* Wed Aug 20 2014 - Release 1
|
||||
- Initial release
|
||||
Reference in New Issue
Block a user