Annotation of /trunk/mage-buildserver/buildserver-upload-smage.sh
Parent Directory | Revision Log
Revision 2771 -
(hide annotations)
(download)
(as text)
Thu Aug 28 09:04:24 2014 UTC (9 years, 9 months ago) by niro
File MIME type: application/x-sh
File size: 2821 byte(s)
Thu Aug 28 09:04:24 2014 UTC (9 years, 9 months ago) by niro
File MIME type: application/x-sh
File size: 2821 byte(s)
-use mage.rc settings
1 | niro | 2588 | #!/bin/bash |
2 | |||
3 | # get configuration | ||
4 | BUILDSERVER_CONFIG_DIR="/etc/mage-buildserver" | ||
5 | source ${BUILDSERVER_CONFIG_DIR}/buildserver.conf | ||
6 | |||
7 | source ${BUILDSERVER_LIB_DIR}/buildserver-functions.sh | ||
8 | |||
9 | # override | ||
10 | #BUILDROOT="/mnt/test-buildroot" | ||
11 | #BUILD_ARCH=( x86_64 i686 ) | ||
12 | #BUILDROOT_PROFILE="R11" | ||
13 | #SMAGE_SVN_REPO="svn://cvs.magellan-linux.de/smage/trunk" | ||
14 | #MAGE_SVN_REPO="svn://cvs.magellan-linux.de/mage/trunk" | ||
15 | |||
16 | SMAGEFILE="$1" | ||
17 | |||
18 | if [[ -z ${SMAGEFILE} ]] | ||
19 | then | ||
20 | die "no smage file given. call '$(basename $0) with/relative/path/from/buildroot/svn/smage/to/smagefile'" | ||
21 | fi | ||
22 | |||
23 | niro | 2733 | for arch in ${BUILD_ARCH[*]} src |
24 | do | ||
25 | |||
26 | echo "SMAGEFILE=\"${SMAGEFILE}\"" > ${BUILDROOT}/${arch}/.runrc | ||
27 | echo "PKG_SCP_REPO=\"${PKG_SCP_REPO}\"" >> ${BUILDROOT}/${arch}/.runrc | ||
28 | echo "BUILD_ARCH=\"${arch}\"" >> ${BUILDROOT}/${arch}/.runrc | ||
29 | cat >> ${BUILDROOT}/${arch}/.runrc << "EOF" | ||
30 | if [ -f /etc/rc.d/init.d/functions ] | ||
31 | then | ||
32 | source /etc/rc.d/init.d/functions | ||
33 | else | ||
34 | die "/etc/rc.d/init.d/functions not found" | ||
35 | fi | ||
36 | if [ -f /etc/mage.rc.global ] | ||
37 | then | ||
38 | source /etc/mage.rc.global | ||
39 | else | ||
40 | die "/etc/mage.rc.global not found" | ||
41 | fi | ||
42 | if [ -f /etc/mage.rc ] | ||
43 | then | ||
44 | source /etc/mage.rc | ||
45 | else | ||
46 | die "/etc/mage.rc not found" | ||
47 | fi | ||
48 | if [ -f ${MLIBDIR}/mage4.functions.sh ] | ||
49 | then | ||
50 | source ${MLIBDIR}/mage4.functions.sh | ||
51 | else | ||
52 | die "${MLIBDIR}/mage4.functions.sh not found" | ||
53 | fi | ||
54 | if [ -f ${MLIBDIR}/smage2.functions.sh ] | ||
55 | then | ||
56 | source ${MLIBDIR}/smage2.functions.sh | ||
57 | else | ||
58 | die "${MLIBDIR}/smage2.functions.sh not found" | ||
59 | fi | ||
60 | |||
61 | niro | 2770 | env-rebuild |
62 | source /etc/profile | ||
63 | |||
64 | niro | 2733 | # override die function |
65 | die() | ||
66 | { | ||
67 | echo "ERROR: $@" | ||
68 | return 1 | ||
69 | } | ||
70 | |||
71 | load_mage_features | ||
72 | mage_setup | ||
73 | |||
74 | niro | 2771 | if [ -f ${SMAGESCRIPTSDIR}/${SMAGEFILE} ] |
75 | niro | 2733 | then |
76 | niro | 2771 | smagesource ${SMAGESCRIPTSDIR}/${SMAGEFILE} |
77 | niro | 2733 | else |
78 | niro | 2771 | die "smagefile '${SMAGESCRIPTSDIR}/${SMAGEFILE}' not found." |
79 | niro | 2733 | fi |
80 | |||
81 | if [[ ${BUILD_ARCH} = src ]] | ||
82 | then | ||
83 | TARGET_SRC_PKGFILE=( "/var/cache/mage/src-packages/${PNAME}-${PVER}-${PBUILD}.${SRCPKGSUFFIX}" ) | ||
84 | for i in ${TARGET_SRC_PKGFILE} | ||
85 | do | ||
86 | if [ ! -f ${i} ] | ||
87 | then | ||
88 | die "${i} is missing" | ||
89 | else | ||
90 | scp "${i}" ${PKG_SCP_REPO}/${BUILD_ARCH}/ | ||
91 | fi | ||
92 | done | ||
93 | else | ||
94 | # honor split packages | ||
95 | if [[ -n ${SPLIT_PACKAGES} ]] | ||
96 | then | ||
97 | split_save_variables | ||
98 | for subpackage in ${SPLIT_PACKAGES} | ||
99 | do | ||
100 | # get the right variables for the split | ||
101 | export PNAME="${subpackage}" | ||
102 | split_info_${PNAME} | ||
103 | |||
104 | niro | 2771 | TARGET_PKGFILE+=( "${PKGDIR}/${PNAME}-${PVER}-${BUILD_ARCH}$(print_distrotag)-${PBUILD}.${PKGSUFFIX}" ) |
105 | niro | 2733 | |
106 | # restore smage environment | ||
107 | split_restore_variables | ||
108 | done | ||
109 | # unset all saved smage variables | ||
110 | split_unset_variables | ||
111 | else | ||
112 | niro | 2771 | TARGET_PKGFILE=( "${PKGDIR}/${PNAME}-${PVER}-${BUILD_ARCH}$(print_distrotag)-${PBUILD}.${PKGSUFFIX}" ) |
113 | niro | 2733 | fi |
114 | |||
115 | for i in ${TARGET_PKGFILE} | ||
116 | do | ||
117 | if [ ! -f ${i} ] | ||
118 | then | ||
119 | die "${i} is missing" | ||
120 | else | ||
121 | scp "${i}" ${PKG_SCP_REPO}/${BUILD_ARCH}/ | ||
122 | fi | ||
123 | done | ||
124 | fi | ||
125 | |||
126 | EOF | ||
127 | runarch-script ${arch} .runrc || die "${arch} package build failed" | ||
128 | done |