source: MondoRescue/branches/stable/tools/pkg2ftp @ 1529

Last change on this file since 1529 was 1529, checked in by Bruno Cornec, 13 years ago
  • ChangeLogs? updated for upcoming 2.2.4
  • Attempt to fix #177 by removing first headers and repodata directory before regenerating them.
  • Fix a problem in directory link handling in mindi (seen on gentoo 64) with the precious help of Francesco Talamona ti.liame_at_email.it
  • Gentoo ebuild are now unmasked on my side
  • usb-storage instead of usb_storage as a module name for Virtual CD support seems better
  • Document support for Proliant Virtual Media with mindi
  • Mandriva packages go first to contrib/testing not backport
  • Size of DVD is 4482 (or more surely 4480 to avoid problems). Fixed everywhere.
  • Fix a bug in Mandriva official package creation

(merge -r1519:1528 $SVN_M/branches/2.2.4)

  • Property svn:executable set to *
  • Property svn:keywords set to Id
File size: 2.6 KB
Line 
1#!/bin/bash
2#
3# Deliver packages and tgz files to ftp.mondorescue.org
4#
5# $Id: pkg2ftp 1529 2007-07-06 12:28:03Z bruno $
6#
7
8
9(
10dname=`dirname $0`
11prem=`echo $dname |cut -c1`
12if [ _${prem} = _"/" ]; then
13        export TOOLHOME=$dname
14else
15    export TOOLHOME=${PWD}/$dname
16fi
17
18. $TOOLHOME/common-env
19. $TOOLHOME/distro-env
20. $TOOLHOME/ftp-env
21
22# We need to get $VER and $TAG
23if [ "$1" = "" ]; then
24    LAST=`cat ${TOPDIR}/LAST`
25else
26    LAST=$1
27    shift
28fi
29VER=`echo $LAST | cut -d- -f1`
30TAG=`echo $LAST | cut -d- -f2`
31echo "Working on ${VER}-$TAG"
32   
33if [ "$1" = "" ]; then
34    c="mondo-doc mindi mindi-busybox mondo"
35else
36    if [ "$1" = "all" ]; then
37        c="mindi-kernel mondo-doc mindi mindi-busybox mondo"
38    else
39        c="$*"
40    fi
41fi
42
43export pkg=""
44echo "Working under $TOPBUILDDIR"
45cd $TOPBUILDDIR
46
47spkg=""
48pkg=""
49
50for p in $c; do
51    # s= stable; t = trunk; 1-9 = official version
52    src=${TOPDIR}/${VER}-$TAG/$p-[1-9st]*.tar.gz
53    pv=`basename $src .tar.gz`
54    tar -xz -C $MONDOTMP -f $src $pv/TAG
55    tag=`cat $MONDOTMP/$pv/TAG`
56    if [  _"$dtype" = _"rpm" ]; then
57        if [ _"$p" = _"mondo-doc" ] || [ _"$p" = _"mindi" ]; then
58            ar="noarch"
59        else
60            ar=$ARCH
61        fi
62        pkg="$pkg ${TOPBUILDDIR}/RPMS/${ar}/$pv-${tag}${suf}.${ar}.rpm"
63        spkg="$spkg ${TOPBUILDDIR}/SRPMS/$pv-${tag}${suf}.src.rpm"
64    elif [  _"$dtype" = "_deb" ]; then
65        pkg="$pkg ${TOPBUILDDIR}/$p_*.deb"
66        spkg="$spkg ${TOPBUILDDIR}/$p_*.dsc ${TOPBUILDDIR}/$p_*.tar.gz"
67    elif [  _"$dtype" = "_ebuild" ]; then
68        spkg="$spkg ${TOPBUILDDIR}/portage/sys-apps/$p/$pv.ebuild"
69        pkg="$pkg /usr/portage/packages/All/$pv.tbz2"
70    elif [  _"$dfam" = _"slackware" ]; then
71        pkg="$pkg ${TOPBUILDDIR}/build-$p/$pv-*-${tag}mr.tgz"
72    fi
73done
74
75echo "Packages delivery to ${ACCOUNT}:${DSTDIR}/${ddir}/${dver}"
76ssh -q ${ACCOUNT} "mkdir -p ${DSTDIR}/${ddir}/${dver} ; cd ${DSTDIR}/${ddir}/${dver} ; rm -f ${pkg} ${spkg}"
77scp -p ${pkg} ${spkg} ${ACCOUNT}:${DSTDIR}/${ddir}/${dver}
78if [  _"$dtype" = _"rpm" ]; then
79    if [ _"$ddir" = _"mandriva" ] || [ _"$ddir" = _"mandrake" ]; then
80        cat > $MONDOTMP/addmedia << EOF
81urpmi.addmedia mondorescue ftp://ftp.mondorescue.org/$ddir/$dver with hdlist.cz
82EOF
83        chmod 755 $MONDOTMP/addmedia
84        scp -p $MONDOTMP/addmedia ${ACCOUNT}:${DSTDIR}/${ddir}/${dver}
85        # Build a urpmi repository
86        ssh -q ${ACCOUNT} "cd ${DSTDIR}/${ddir}/${dver} ; genhdlist ."
87    else 
88        cat > $MONDOTMP/${ddir}-mondo.repo << EOF
89[mondorescue]
90name=$ddir $dver - MondoRescue Vanilla Packages
91baseurl=ftp://ftp.mondorescue.org/$ddir/$dver
92enabled=1
93gpgcheck=0
94EOF
95        scp -p $MONDOTMP/${ddir}-mondo.repo ${ACCOUNT}:${DSTDIR}/${ddir}/${dver}
96        # Build a yum repository
97        ssh -q ${ACCOUNT} "cd ${DSTDIR}/${ddir}/${dver} ; rm -rf headers/ repodata/ ; yum-arch . ; createrepo ."
98    fi
99fi
100rm -rf $MONDOTMP
101) 2>&1 | tee /tmp/pkg2ftp.log
Note: See TracBrowser for help on using the repository browser.