Contents of /trunk/pkgtools/add2svn.sh
Parent Directory | Revision Log
Revision 821 -
(show annotations)
(download)
(as text)
Fri Apr 24 19:17:49 2009 UTC (15 years, 1 month ago) by niro
File MIME type: application/x-sh
File size: 4845 byte(s)
Fri Apr 24 19:17:49 2009 UTC (15 years, 1 month ago) by niro
File MIME type: application/x-sh
File size: 4845 byte(s)
-added svn related tools
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 ]] && SVN_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}-svn |
22 | |
23 | SMAGEDIR=$(dirname ${SMAGEFILE}) |
24 | MD5DIR=${SMAGEDIR}/md5 |
25 | MD5NAME=$(basename $1 .smage2).md5 |
26 | SMAGENAME=$(basename $1) |
27 | CURPNAME=$(magename2pname $1) |
28 | CURPVER=$(magename2pver $1) |
29 | CURPBUILD=$(magename2pbuild $(basename $1 .smage2)) |
30 | PKGNAME=${CURPNAME}-${CURPVER}-${CURARCH}-${CURPBUILD}.mpk |
31 | SRCPKGNAME=${CURPNAME}-${CURPVER}-${CURPBUILD}.mpks |
32 | REPO="$(echo ${SMAGEFILE#*trunk/} | cut -d'/' -f1)" |
33 | SSHLOGIN="tjoke@magellan-linux.de:/var/www/htdocs/magellan/magellan-dev/svn/unstable/packages" |
34 | SRCTARBALL_URI="http://magellan-linux.de/magellan/magellan-dev/svn/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 | svn add ${CURPNAME} |
71 | pushd ${SMAGEDIR} |
72 | svn add md5 |
73 | svn add ${SMAGENAME} md5/${MD5NAME} |
74 | |
75 | [[ -z ${SVN_COMMIT} ]] && SVN_COMMIT="auto added: ver bump to ${CURPVER}-${CURPBUILD}" |
76 | svn commit -m "${SVN_COMMIT}" ${SMAGENAME} md5/${MD5NAME} |
77 | popd |
78 | fi |
79 | |
80 | sudo -s << EOF |
81 | :> ${BUILDROOT}/.installrc |
82 | |
83 | echo "export LC_ALL=C" >> ${BUILDROOT}/.installrc |
84 | echo "REPO=${REPO}" >> ${BUILDROOT}/.installrc |
85 | echo "CURPNAME=${CURPNAME}" >> ${BUILDROOT}/.installrc |
86 | echo "CURPVER=${CURPVER}" >> ${BUILDROOT}/.installrc |
87 | echo "CURPBUILD=${CURPBUILD}" >> ${BUILDROOT}/.installrc |
88 | echo "CURARCH=${CURARCH}" >> ${BUILDROOT}/.installrc |
89 | echo "SMAGENAME=${SMAGENAME}" >> ${BUILDROOT}/.installrc |
90 | echo "MD5NAME=${MD5NAME}" >> ${BUILDROOT}/.installrc |
91 | echo "PKGNAME=${PKGNAME}" >> ${BUILDROOT}/.installrc |
92 | echo "SPKGNAME=${SPKGNAME}" >> ${BUILDROOT}/.installrc |
93 | echo '/usr/bin/whoami' >> ${BUILDROOT}/.installrc |
94 | echo 'source /etc/profile' >> ${BUILDROOT}/.installrc |
95 | #echo 'echo PATH=\${PATH};read' >> ${BUILDROOT}/.installrc |
96 | echo 'cd /var/cache/mage/smage/trunk/${REPO}' >> ${BUILDROOT}/.installrc |
97 | echo 'svn update include' >> ${BUILDROOT}/.installrc |
98 | echo 'svn update ${CURPNAME}' >> ${BUILDROOT}/.installrc |
99 | echo 'USE_SRCTARBALL=${USE_SRCTARBALL}' >> ${BUILDROOT}/.installrc |
100 | echo 'if [[ \${USE_SRCTARBALL} != true ]];then ' >> ${BUILDROOT}/.installrc |
101 | echo '/sbin/smage2 /var/cache/mage/smage/trunk/${REPO}/${CURPNAME}/${SMAGENAME} || exit 1' >> ${BUILDROOT}/.installrc |
102 | echo 'else' >> ${BUILDROOT}/.installrc |
103 | echo 'echo "Fetching SRC_TARBALL"' >> ${BUILDROOT}/.installrc |
104 | echo 'pushd /var/tmp/magebuild > /dev/null' >> ${BUILDROOT}/.installrc |
105 | echo "SRCTARBALL=${CURPNAME}-${CURPVER}-${CURPBUILD}.mpks" >> ${BUILDROOT}/.installrc |
106 | echo "SRCTARBALL_URI=${SRCTARBALL_URI}" >> ${BUILDROOT}/.installrc |
107 | echo '/usr/bin/wget -c \${SRCTARBALL_URI}/\${SRCTARBALL}' >> ${BUILDROOT}/.installrc |
108 | echo '/sbin/smage2 -st \${SRCTARBALL}' >> ${BUILDROOT}/.installrc |
109 | echo '[[ -f \${SRCTARBALL} ]] && rm \${SRCTARBALL}' >> ${BUILDROOT}/.installrc |
110 | echo 'popd > /dev/null' >> ${BUILDROOT}/.installrc |
111 | echo 'fi' >> ${BUILDROOT}/.installrc |
112 | echo '/sbin/mage install ${CURPNAME} || exit 1' >> ${BUILDROOT}/.installrc |
113 | echo 'mv /var/cache/mage/packages/${PKGNAME} /BUILDED' >> ${BUILDROOT}/.installrc |
114 | echo 'mv /var/cache/mage/packages/sources/${SRCPKGNAME} /BUILDED/sources' >> ${BUILDROOT}/.installrc |
115 | echo 'rm -rf /var/cache/mage/sources/${CURPNAME}' >> ${BUILDROOT}/.installrc |
116 | EOF |
117 | |
118 | sudo -H /sbin/chroot ${BUILDROOT} /bin/bash /.installrc |
119 | sudo rm ${BUILDROOT}/.installrc |
120 | |
121 | if [[ -f ${BUILDROOT}/BUILDED/${PKGNAME} ]] |
122 | then |
123 | scp ${BUILDROOT}/BUILDED/${PKGNAME} ${SSHLOGIN}/${CURARCH}/ |
124 | else |
125 | echo "Error: ${BUILDROOT}/BUILDED/${PKGNAME} missing!" |
126 | exit 1 |
127 | fi |
128 | |
129 | if [[ -f ${BUILDROOT}/BUILDED/sources/${SRCPKGNAME} ]] |
130 | then |
131 | scp ${BUILDROOT}/BUILDED/sources/${SRCPKGNAME} ${SSHLOGIN}/src/ |
132 | else |
133 | echo "Error: ${BUILDROOT}/BUILDED/${SRCPKGNAME} missing!" |
134 | exit 1 |
135 | fi |
136 | |
137 | [[ -d /var/cache/mage/sources/${CURPNAME} ]] && rm -rf /var/cache/mage/sources/${CURPNAME} |
138 | |
139 |
Properties
Name | Value |
---|---|
svn:executable | * |
svn:keywords | Id |