blob: 55fc56d03cd4c7a79c547daa8db4fd4d0343e092 (
plain)
1
2
3
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
|
#!/bin/bash
#
# Simplistic RPM creation logic. See q.spec.template for actual spec
#
# Version number should be provided as input in the command line
#
# requires:
# * installation of ronn
# * installation of rpmbuild
#
# Output rpm is generated inside build/rpm/RPMS/noarch/
#
if [ $# -ne 1 ];
then
echo 'create-rpm <version>'
exit 1
fi
command -v ronn &>/dev/null || { echo >&2 "ronn needs to be installed."; exit 1; }
command -v rpmbuild &>/dev/null || { echo >&2 "rpmbuild needs to be installed."; exit 1; }
set -e
base_folder=$(dirname $0)
pushd ${base_folder}
VERSION=$1
LOCAL=yes
REAL_PACKAGE_NAME=q
RPM_PACKAGE_NAME=q-text-as-data
FULL_NAME_FOLDER=${RPM_PACKAGE_NAME}-${VERSION}
rm -rf build/
rm -rf ${FULL_NAME_FOLDER}
rm -rf tmp.tar.gz
mkdir -p build/rpm
mkdir ${FULL_NAME_FOLDER}
if [ ! -e ${RPM_PACKAGE_NAME}.spec.template ];
then
echo "spec template does not exist. can't continue"
exit 1
fi
cat ${RPM_PACKAGE_NAME}.spec.template | sed "s/VERSION_PLACEHOLDER/$1/" > ${FULL_NAME_FOLDER}/${RPM_PACKAGE_NAME}.spec
if [ "$LOCAL" == "yes" ];
then
echo "Creating source codebase version ${VERSION} from local copy"
cp -r `ls -d1 ../* | egrep -v "dist|test"` ${FULL_NAME_FOLDER}/
else
echo "Creating source codebase version ${VERSION} from github archive"
wget -O tmp.tar.gz "https://github.com/harelba/${REAL_PACKAGE_NAME}/archive/${VERSION}.tar.gz"
tar xvzf tmp.tar.gz --strip-components=1 -C ${FULL_NAME_FOLDER}/
rm -f tmp.tar.gz
fi
ronn ${FULL_NAME_FOLDER}/doc/USAGE.markdown
rm -f ${FULL_NAME_FOLDER}/doc/USAGE.html
rm -rf ${FULL_NAME_FOLDER}/dist ${FULL_NAME_FOLDER}/test
echo "Creating tar file"
TAR_FILE_NAME=${RPM_PACKAGE_NAME}-${VERSION}.tar.gz
tar cvfz ${TAR_FILE_NAME} ${FULL_NAME_FOLDER}/*
rpmbuild --define "_topdir `pwd`/build/rpm" -ta ${TAR_FILE_NAME}
rm -f ${TAR_FILE_NAME}
rm -rf ${FULL_NAME_FOLDER}
popd
|