Initial import.
authorFrantišek Dvořák <valtri@civ.zcu.cz>
Sat, 7 Jul 2012 18:42:23 +0000 (20:42 +0200)
committerFrantišek Dvořák <valtri@civ.zcu.cz>
Sat, 7 Jul 2012 18:42:23 +0000 (20:42 +0200)
mock.sh [new file with mode: 0755]
sl-5-i386.cfg.template [new file with mode: 0644]
sl-5-x86_64.cfg.template [new file with mode: 0644]
sl-6-x86_64.cfg.template [new file with mode: 0644]

diff --git a/mock.sh b/mock.sh
new file mode 100755 (executable)
index 0000000..0db44fd
--- /dev/null
+++ b/mock.sh
@@ -0,0 +1,107 @@
+#! /bin/bash -e
+
+CONF=sl-5-x86_64
+#CONF=sl-5-i386
+#CONF=sl-6-x86_64
+
+REPORTS=results/reports
+CMD="mock --configdir=mock -r $CONF --resultdir `pwd`/$REPORTS"
+
+if ! test -d mock; then
+       mkdir mock
+       ln -s /etc/mock/logging.ini mock/
+       touch mock/site-defaults.cfg
+fi
+test -s mock/$CONF.cfg || sed "s,@PWD@,`pwd`," `dirname $0`/$CONF.cfg.template > mock/$CONF.cfg
+
+mkdir $REPORTS  2>/dev/null || :
+createrepo results
+
+build() {
+       local FILE="$1"
+       local BASENAME=`basename "$FILE" | sed -e 's/-[0-9]\+.*//'`
+
+       echo "==== Building $BASENAME ==== "
+       touch $REPORTS/fail.$BASENAME
+       rm -f $REPORTS/$BASENAME-root.log $REPORTS/$BASENAME-build.log $REPORTS/root.log $REPORTS/build.log
+       ln -s $BASENAME-root.log $REPORTS/root.log
+       ln -s $BASENAME-build.log $REPORTS/build.log
+       touch $REPORTS/$BASENAME-root.log $REPORTS/$BASENAME-build.log
+
+       echo "+ $CMD --rebuild $FILE"
+       $CMD --rebuild $FILE
+
+       mv $REPORTS/*.rpm results/
+       createrepo results
+
+       rm -f $REPORTS/fail.$BASENAME
+       echo $BASENAME >> $REPORTS/success.log
+       echo "==== Done $BASENAME ===="
+}
+
+
+package() {
+       local file=`find $1/dist -maxdepth 1 -type f -name $2-\*.src.rpm | head -n 1`
+       build $file
+}
+
+
+while test -n "$1"; do
+       case "$1" in
+       gridsite|grids)
+               file=`find org.gridsite.core/RPMTMP -type f -name gridsite-\*.src.rpm | head -n 1`
+               build $file
+               ;;
+
+       jobid)
+               package org.glite.jobid.api-c glite-jobid-api-c
+               package org.glite.jobid.api-cpp glite-jobid-api-cpp
+               package org.glite.jobid.api-java glite-jobid-api-java
+               ;;
+
+       lbjp-common|lbu)
+               package org.glite.lbjp-common.log glite-lbjp-common-log
+               package org.glite.lbjp-common.trio glite-lbjp-common-trio
+               package org.glite.lbjp-common.maildir glite-lbjp-common-maildir
+               package org.glite.lbjp-common.gss glite-lbjp-common-gss
+               package org.glite.lbjp-common.db glite-lbjp-common-db
+               package org.glite.lbjp-common.server-bones glite-lbjp-common-server-bones
+               package org.glite.lbjp-common.gsoap-plugin glite-lbjp-common-gsoap-plugin
+               package org.glite.lbjp-common.jp-interface glite-lbjp-common-jp-interface
+               ;;
+
+       lb)
+               package org.glite.lb.types glite-lb-types
+               package org.glite.lb.yaim glite-lb-yaim
+               package org.glite.lb.ws-interface glite-lb-ws-interface
+               package org.glite.lb.common glite-lb-common
+               package org.glite.lb.doc glite-lb-doc
+               package org.glite.lb.client glite-lb-client
+               package org.glite.lb.client-java glite-lb-client-java
+               package org.glite.lb.logger glite-lb-logger
+               package org.glite.lb.logger-msg glite-lb-logger-msg
+               package org.glite.lb.state-machine glite-lb-state-machine
+               package org.glite.lb.utils glite-lb-utils
+               package org.glite.lb.ws-test glite-lb-ws-test
+               package org.glite.lb.harvester glite-lb-harvester
+               package org.glite.lb.server glite-lb-server
+               package org.glite.lb.emi-lb emi-lb
+               package org.glite.lb.nagios emi-lb-nagios-plugins
+               ;;
+
+       canl)
+               package emi.canl.canl-c canl-c
+               ;;
+
+       px)
+               package org.glite.px.proxyrenewal glite-px-proxyrenewal
+               package org.glite.px.myproxy-yaim glite-px-myproxy-yaim
+               package org.glite.px.emi-px emi-px
+               ;;
+
+       *)
+               build "$1"
+       esac
+
+       shift
+done
diff --git a/sl-5-i386.cfg.template b/sl-5-i386.cfg.template
new file mode 100644 (file)
index 0000000..90ad4ac
--- /dev/null
@@ -0,0 +1,55 @@
+config_opts['root'] = 'sl-5-i386'
+config_opts['target_arch'] = 'i386'
+config_opts['legal_host_arches'] = ('i386',)
+config_opts['chroot_setup_cmd'] = 'groupinstall buildsys-build'
+config_opts['dist'] = 'el5'  # only useful for --resultdir variable subst
+config_opts['macros']['%__arch_install_post'] = '%{nil}'
+
+config_opts['yum.conf'] = """
+[main]
+cachedir=/var/cache/yum
+debuglevel=1
+logfile=/var/log/yum.log
+reposdir=/dev/null
+retries=20
+obsoletes=1
+gpgcheck=0
+assumeyes=1
+syslog_ident=mock
+syslog_device=
+
+# repos
+
+[core]
+name=SL 5 base
+baseurl=http://scientificlinux.physik.uni-muenchen.de/mirror/scientific/5x/$basearch/SL
+       ftp://mirror.switch.ch/mirror/scientificlinux/5x/$basearch/SL
+       ftp://ftp.scientificlinux.org/linux/scientific/5x/$basearch/SL
+
+[update]
+name=SL 5 updates
+baseurl=http://scientificlinux.physik.uni-muenchen.de/mirror/scientific/5x/$basearch/updates/security
+       ftp://mirror.switch.ch/mirror/scientificlinux/5x/$basearch/updates/security
+       ftp://ftp.scientificlinux.org/linux/scientific/5x/$basearch/updates/security
+
+[extras]
+name=epel
+mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=epel-5&arch=i386
+
+[EGI-trustanchors]
+name=EGI-trustanchors
+baseurl=http://repository.egi.eu/sw/production/cas/1/current/
+gpgkey=http://repository.egi.eu/sw/production/cas/1/GPG-KEY-EUGridPMA-RPM-3
+
+[EMI-2-third-party]
+name=EMI 2 Third-Party Repository
+baseurl=http://emisoft.web.cern.ch/emisoft/dist/EMI/2/sl6/$basearch/third-party
+gpgkey=http://emisoft.web.cern.ch/emisoft/dist/EMI/2/RPM-GPG-KEY-emi
+protect=1
+enabled=1
+
+[main]
+[local]
+name=Local
+baseurl=file://@PWD@/repo
+"""
diff --git a/sl-5-x86_64.cfg.template b/sl-5-x86_64.cfg.template
new file mode 100644 (file)
index 0000000..e11ec9d
--- /dev/null
@@ -0,0 +1,55 @@
+config_opts['root'] = 'sl-5-x86_64'
+config_opts['target_arch'] = 'x86_64'
+config_opts['legal_host_arches'] = ('x86_64',)
+config_opts['chroot_setup_cmd'] = 'groupinstall buildsys-build'
+config_opts['dist'] = 'el5'  # only useful for --resultdir variable subst
+config_opts['macros']['%__arch_install_post'] = '%{nil}'
+
+config_opts['yum.conf'] = """
+[main]
+cachedir=/var/cache/yum
+debuglevel=1
+logfile=/var/log/yum.log
+reposdir=/dev/null
+retries=20
+obsoletes=1
+gpgcheck=0
+assumeyes=1
+syslog_ident=mock
+syslog_device=
+
+# repos
+
+[core]
+name=SL 5 base
+baseurl=http://scientificlinux.physik.uni-muenchen.de/mirror/scientific/5x/$basearch/SL
+       ftp://mirror.switch.ch/mirror/scientificlinux/5x/$basearch/SL
+       ftp://ftp.scientificlinux.org/linux/scientific/5x/$basearch/SL
+
+[update]
+name=SL 5 updates
+baseurl=http://scientificlinux.physik.uni-muenchen.de/mirror/scientific/5x/$basearch/updates/security
+       ftp://mirror.switch.ch/mirror/scientificlinux/5x/$basearch/updates/security
+       ftp://ftp.scientificlinux.org/linux/scientific/5x/$basearch/updates/security
+
+[extras]
+name=epel
+mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=epel-5&arch=x86_64
+
+[EGI-trustanchors]
+name=EGI-trustanchors
+baseurl=http://repository.egi.eu/sw/production/cas/1/current/
+gpgkey=http://repository.egi.eu/sw/production/cas/1/GPG-KEY-EUGridPMA-RPM-3
+
+[EMI-2-third-party]
+name=EMI 2 Third-Party Repository
+baseurl=http://emisoft.web.cern.ch/emisoft/dist/EMI/2/sl5/$basearch/third-party
+gpgkey=http://emisoft.web.cern.ch/emisoft/dist/EMI/2/RPM-GPG-KEY-emi
+protect=1
+enabled=1
+
+[main]
+[local]
+name=Local
+baseurl=file://@PWD@/repo
+"""
diff --git a/sl-6-x86_64.cfg.template b/sl-6-x86_64.cfg.template
new file mode 100644 (file)
index 0000000..c589848
--- /dev/null
@@ -0,0 +1,55 @@
+config_opts['root'] = 'sl-6-x86_64'
+config_opts['target_arch'] = 'x86_64'
+config_opts['legal_host_arches'] = ('x86_64',)
+config_opts['chroot_setup_cmd'] = 'groupinstall buildsys-build'
+config_opts['dist'] = 'el6'  # only useful for --resultdir variable subst
+config_opts['macros']['%__arch_install_post'] = '%{nil}'
+
+config_opts['yum.conf'] = """
+[main]
+cachedir=/var/cache/yum
+debuglevel=1
+logfile=/var/log/yum.log
+reposdir=/dev/null
+retries=20
+obsoletes=1
+gpgcheck=0
+assumeyes=1
+syslog_ident=mock
+syslog_device=
+
+# repos
+
+[core]
+name=SL 6 base
+baseurl=http://scientificlinux.physik.uni-muenchen.de/mirror/scientific/6x/$basearch/os
+       ftp://mirror.switch.ch/mirror/scientificlinux/6x/$basearch/os
+       ftp://ftp.scientificlinux.org/linux/scientific/6x/$basearch/os
+
+[update]
+name=SL 6 updates
+baseurl=http://scientificlinux.physik.uni-muenchen.de/mirror/scientific/6x/$basearch/updates/security
+       ftp://mirror.switch.ch/mirror/scientificlinux/6x/$basearch/updates/security
+       ftp://ftp.scientificlinux.org/linux/scientific/6x/$basearch/updates/security
+
+[extras]
+name=epel
+mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=epel-6&arch=x86_64
+
+[EGI-trustanchors]
+name=EGI-trustanchors
+baseurl=http://repository.egi.eu/sw/production/cas/1/current/
+gpgkey=http://repository.egi.eu/sw/production/cas/1/GPG-KEY-EUGridPMA-RPM-3
+
+[EMI-2-third-party]
+name=EMI 2 Third-Party Repository
+baseurl=http://emisoft.web.cern.ch/emisoft/dist/EMI/2/sl6/$basearch/third-party
+gpgkey=http://emisoft.web.cern.ch/emisoft/dist/EMI/2/RPM-GPG-KEY-emi
+protect=1
+enabled=1
+
+[main]
+[local]
+name=Local
+baseurl=file://@PWD@/repo
+"""