Magellan Linux

Contents of /trunk/pkgtools/add2cvs.sh

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1331 - (show annotations) (download) (as text)
Tue May 31 17:44:01 2011 UTC (12 years, 11 months ago) by niro
File MIME type: application/x-sh
File size: 4687 byte(s)
-sync with current
1 #!/bin/bash
2
3 source /usr/lib/mage/mage4.functions.sh
4
5 SMAGEFILE="$1"
6 if [[ -z ${SMAGEFILE} ]]
7 then
8 echo "No smagefile given."
9 exit 1
10 fi
11 [[ -n $2 ]] && [[ $2 != -st ]] && CVS_COMMIT="$2"
12 if [[ $3 = -st ]] || [[ $2 = -st ]]
13 then
14 echo "Using SRCTARBALL ..."
15 USE_SRCTARBALL=true
16 fi
17
18 #CURARCH=i686
19 CURARCH=x86_64
20
21 BUILDROOT=/mnt/BUILDROOT-${CURARCH}
22 #BUILDROOT=/mnt/BUILDROOT
23
24 SMAGEDIR=$(dirname ${SMAGEFILE})
25 MD5DIR=${SMAGEDIR}/md5
26 MD5NAME=$(basename $1 .smage2).md5
27 SMAGENAME=$(basename $1)
28 CURPNAME=$(magename2pname $1)
29 CURPVER=$(magename2pver $1)
30 CURPBUILD=$(magename2pbuild $(basename $1 .smage2))
31 PKGNAME=${CURPNAME}-${CURPVER}-${CURARCH}-${CURPBUILD}.mpk
32 SRCPKGNAME=${CURPNAME}-${CURPVER}-${CURPBUILD}.mpks
33 SSHLOGIN="tjoke@magellan-linux.de:/var/www/htdocs/magellan/magellan-dev/unstable/packages"
34 SRCTARBALL_URI="http://magellan-linux.de/magellan/magellan-dev/unstable/packages/src"
35
36 # abort if the package is already installed in BUILDROOT
37 get_value_from_file()
38 {
39 local var="$1"
40 local file="$2"
41 local value
42
43 # source /etc/mage.rc to get the includes right
44 source /etc/mage.rc.global
45 source /etc/mage.rc
46
47 # evaluate the value
48 source ${file} $> /dev/null
49 eval value=\$$(echo ${var})
50 echo "${value}"
51 }
52
53 CURPCATEGORIE=$(get_value_from_file PCATEGORIE ${SMAGEFILE})
54 INSTALLDB_BUILDROOT=$(get_value_from_file INSTALLDB ${BUILDROOT}/etc/mage.rc)
55
56 if [[ -d ${BUILDROOT}/${INSTALLDB_BUILDROOT}/${CURPCATEGORIE}/${CURPNAME}-${CURPVER}-${CURPBUILD} ]]
57 then
58 echo "Package '${CURPCATEGORIE}/${CURPNAME}-${CURPVER}-${CURPBUILD}' already installed in ${BUILDROOT}. Aborting!"
59 exit 1
60 fi
61
62 # delete md5 if exist
63 [[ -f ${MD5DIR}/${MD5NAME} ]] && rm ${MD5DIR}/${MD5NAME}
64
65 if [[ ${USE_SRCTARBALL} != true ]]
66 then
67 /sbin/smage2 download ${SMAGEFILE}
68 /sbin/smage2 calcmd5 ${SMAGEFILE} ${MD5DIR}
69 pushd ${SMAGEDIR}/../
70 cvs add ${CURPNAME}
71 pushd ${SMAGEDIR}
72 cvs add md5
73 cvs add ${SMAGENAME} md5/${MD5NAME}
74
75 [[ -z ${CVS_COMMIT} ]] && CVS_COMMIT="auto added: ver bump to ${CURPVER}-${CURPBUILD}"
76 cvs commit -m "${CVS_COMMIT}" ${SMAGENAME} md5/${MD5NAME}
77 popd
78 fi
79
80 sudo -s << EOF
81 :> ${BUILDROOT}/.installrc
82
83 echo "CURPNAME=${CURPNAME}" >> ${BUILDROOT}/.installrc
84 echo "CURPVER=${CURPVER}" >> ${BUILDROOT}/.installrc
85 echo "CURPBUILD=${CURPBUILD}" >> ${BUILDROOT}/.installrc
86 echo "CURARCH=${CURARCH}" >> ${BUILDROOT}/.installrc
87 echo "SMAGENAME=${SMAGENAME}" >> ${BUILDROOT}/.installrc
88 echo "MD5NAME=${MD5NAME}" >> ${BUILDROOT}/.installrc
89 echo "PKGNAME=${PKGNAME}" >> ${BUILDROOT}/.installrc
90 echo "SPKGNAME=${SPKGNAME}" >> ${BUILDROOT}/.installrc
91 echo '/usr/bin/whoami' >> ${BUILDROOT}/.installrc
92 echo 'source /etc/profile' >> ${BUILDROOT}/.installrc
93 #echo 'echo PATH=\${PATH};read' >> ${BUILDROOT}/.installrc
94 echo 'cd /var/cache/mage/smage' >> ${BUILDROOT}/.installrc
95 echo 'cvs update include' >> ${BUILDROOT}/.installrc
96 echo 'cvs update -dPA ${CURPNAME}' >> ${BUILDROOT}/.installrc
97 echo 'USE_SRCTARBALL=${USE_SRCTARBALL}' >> ${BUILDROOT}/.installrc
98 echo 'if [[ \${USE_SRCTARBALL} != true ]];then ' >> ${BUILDROOT}/.installrc
99 echo '/sbin/smage2 /var/cache/mage/smage/${CURPNAME}/${SMAGENAME} || exit 1' >> ${BUILDROOT}/.installrc
100 echo 'else' >> ${BUILDROOT}/.installrc
101 echo 'echo "Fetching SRC_TARBALL"' >> ${BUILDROOT}/.installrc
102 echo 'pushd /var/tmp/magebuild > /dev/null' >> ${BUILDROOT}/.installrc
103 echo "SRCTARBALL=${CURPNAME}-${CURPVER}-${CURPBUILD}.mpks" >> ${BUILDROOT}/.installrc
104 echo "SRCTARBALL_URI=${SRCTARBALL_URI}" >> ${BUILDROOT}/.installrc
105 echo '/usr/bin/wget -c \${SRCTARBALL_URI}/\${SRCTARBALL}' >> ${BUILDROOT}/.installrc
106 echo '/sbin/smage2 -st \${SRCTARBALL}' >> ${BUILDROOT}/.installrc
107 echo '[[ -f \${SRCTARBALL} ]] && rm \${SRCTARBALL}' >> ${BUILDROOT}/.installrc
108 echo 'popd > /dev/null' >> ${BUILDROOT}/.installrc
109 echo 'fi' >> ${BUILDROOT}/.installrc
110 echo '/sbin/mage install ${CURPNAME} || exit 1' >> ${BUILDROOT}/.installrc
111 echo 'mv /var/cache/mage/packages/${PKGNAME} /BUILDED' >> ${BUILDROOT}/.installrc
112 echo 'mv /var/cache/mage/packages/sources/${SRCPKGNAME} /BUILDED/sources' >> ${BUILDROOT}/.installrc
113 echo 'rm -rf /var/cache/mage/sources/${CURPNAME}' >> ${BUILDROOT}/.installrc
114 EOF
115
116 sudo -H /sbin/chroot ${BUILDROOT} /bin/bash /.installrc
117 sudo rm ${BUILDROOT}/.installrc
118
119 if [[ -f ${BUILDROOT}/BUILDED/${PKGNAME} ]]
120 then
121 scp ${BUILDROOT}/BUILDED/${PKGNAME} ${SSHLOGIN}/${CURARCH}/
122 else
123 echo "Error: ${BUILDROOT}/BUILDED/${PKGNAME} missing!"
124 exit 1
125 fi
126
127 if [[ -f ${BUILDROOT}/BUILDED/sources/${SRCPKGNAME} ]]
128 then
129 scp ${BUILDROOT}/BUILDED/sources/${SRCPKGNAME} ${SSHLOGIN}/src/
130 else
131 echo "Error: ${BUILDROOT}/BUILDED/${SRCPKGNAME} missing!"
132 exit 1
133 fi
134
135 [[ -d /var/cache/mage/sources/${CURPNAME} ]] && rm -rf /var/cache/mage/sources/${CURPNAME}
136
137

Properties

Name Value
svn:executable *