Merge latest scripts from the debian-cd/setup repo into contrib

This commit is contained in:
Steve McIntyre 2017-06-06 13:10:48 +01:00
parent e31f51a853
commit 0924eff679
18 changed files with 391 additions and 215 deletions

View File

@ -47,8 +47,8 @@ unset BASE_EXCLUDE || true
# Where I am (hoping I'm in the debian-cd dir) # Where I am (hoping I'm in the debian-cd dir)
export BASEDIR=`pwd` export BASEDIR=`pwd`
# Building jessie cd set ... # Building stretch cd set ...
export CODENAME=jessie export CODENAME=stretch
if [ ! "$DI_CODENAME" ] if [ ! "$DI_CODENAME" ]
then then
@ -80,7 +80,7 @@ fi
# some part of this, you must use this option. # some part of this, you must use this option.
# Paths to the mirrors # Paths to the mirrors
if [ "$MIRROR"x = ""x ] ; then if [ "$MIRROR"x = ""x ] ; then
export MIRROR=/org/cdbuilder.debian.org/src/ftp/debian export MIRROR=/srv/cdbuilder.debian.org/src/ftp/debian
fi fi
NUM_ARCHES=`echo $ARCH | wc -w` NUM_ARCHES=`echo $ARCH | wc -w`
@ -91,11 +91,11 @@ else
fi fi
# Path of the temporary directory # Path of the temporary directory
export TDIR=/org/cdbuilder.debian.org/src/deb-cd/tmp/"$INSTALLER_CD""$DI""$OUTARCH" export TDIR=/srv/cdbuilder.debian.org/src/deb-cd/tmp/"$INSTALLER_CD""$DI""$OUTARCH"
# Path where the images will be written # Path where the images will be written
if [ "$OUT"x = ""x ] ; then if [ "$OUT"x = ""x ] ; then
export OUT=/org/cdbuilder.debian.org/dst/deb-cd/out/"$INSTALLER_CD""$DI""$OUTARCH" export OUT=/srv/cdbuilder.debian.org/dst/deb-cd/out/"$INSTALLER_CD""$DI""$OUTARCH"
fi fi
# Where we keep the temporary apt stuff. # Where we keep the temporary apt stuff.
@ -318,3 +318,12 @@ esac
# "SNAPDATETIME" will be replaced at runtime with the correct data # "SNAPDATETIME" will be replaced at runtime with the correct data
# Leave this unset to not add this entry # Leave this unset to not add this entry
export SNAPURL=Debian=http://snapshot.debian.org/archive/debian/SNAPDATETIME/ export SNAPURL=Debian=http://snapshot.debian.org/archive/debian/SNAPDATETIME/
# Add options to wget to include support for the Debian CA, so
# https://d-i.debian.org et al will work.
# Add options to wget to include support for the Debian CA, so
# https://d-i.debian.org et al will work.
if [ -d "/etc/ssl/ca-debian" ]; then
export WGET_OPTS="--ca-directory /etc/ssl/ca-debian/"
fi
export WGET="wget $WGET_OPTS"

View File

@ -31,14 +31,17 @@ cpp.
# ifdef ARCHmulti # ifdef ARCHmulti
The files in this directory are designed to work on both 32-bit The files in this directory are designed to work on both 32-bit
and 64-bit PCs (i386 and amd64). and 64-bit PCs (<code>i386</code> and <code>amd64</code>).
# else # else
The files in this directory are specifically for The files in this directory are specifically for
the <code>ARCH</code> architecture.</p> the <code>ARCH</code> architecture.
# endif # endif
</p>
# endif # endif
<h2>How do I use these files?</h2> <h2>How do I use these files?</h2>
@ -130,17 +133,6 @@ cpp.
# endif # endif
# if defined(TYPEcd) && !defined(ARCHsource) && !defined(STYLElist) # if defined(TYPEcd) && !defined(ARCHsource) && !defined(STYLElist)
# if !defined(ONEonly)
<p>There are different versions of CD #1 here to allow for a
choice of default desktop on installation,
e.g. <code>debian-<i>something</i>-kde-CD-1</code> contains the
core pieces of the KDE desktop and will default to installing
that desktop when used. The <strong>default</strong> desktop
installed using
<code>debian-<i>something</i>-CD-1</code> is Gnome.</p>
# endif
<p>The <code>netinst</code> CD here is a small CD image that <p>The <code>netinst</code> CD here is a small CD image that
contains just the core Debian installer code and a small core set contains just the core Debian installer code and a small core set
@ -148,6 +140,26 @@ cpp.
a desktop or other common software, you'll also need either an a desktop or other common software, you'll also need either an
Internet connection or some other Debian CD/DVD images.</p> Internet connection or some other Debian CD/DVD images.</p>
# if defined(ARCHi386)
<p>The <code>mac netinst</code> CD here is a special version of
the netinst CD image that is targeted specifically at 32-bit
Intel Macintosh machines. It will likely work on most other
i386 machines too, but it does not contain UEFI boot files that
some people need.</p>
# endif
# if defined(ARCHamd64)
<p>The <code>mac netinst</code> CD here is a special version of
the netinst CD image that is targeted specifically at older 64-bit
Intel Macintosh machines. It will likely work on most other
amd64 machines too, but it does not contain UEFI boot files that
some people need.</p>
# endif
# endif # endif
# ifdef UPDATES # ifdef UPDATES
@ -178,7 +190,37 @@ cpp.
#endif #endif
#ifdef FIRMWARE
<h2>Non-free Firmware</h2>
<p>For convenience for some users, this <strong>unofficial</strong>
alternative build
includes <a href="https://wiki.debian.org/Firmware">non-free
firmware</a> for extra support for some awkward hardware.</p>
#endif
#ifdef ARCH_HAS_FIRMWARE
<h2>Non-free Firmware</h2>
<p>This is an <strong>official</strong> Debian image build and so
only includes Free Software.</p>
<p>For convenience for some users, there is an
alternative <strong>unofficial</strong> netinst CD build which
includes <a href="https://wiki.debian.org/Firmware">non-free
firmware</a> for extra support for some awkward hardware. Look under
<a href="/cdimage/unofficial/non-free/cd-including-firmware/">/cdimage/unofficial/non-free/cd-including-firmware/</a>
if you need that CD image instead.</p>
#endif
<h2>Other questions?</h2> <h2>Other questions?</h2>
<p>See the Debian CD <a href="https://www.debian.org/CD/faq/">FAQ</a> <p>See the Debian CD <a href="https://www.debian.org/CD/faq/">FAQ</a>
for lots more information about Debian CDs and installation.</p> for lots more information about Debian CDs and installation.</p>
<p>The images here were put together by
the <a href="https://wiki.debian.org/Teams/DebianCd">Debian CD team</a>
, using debian-cd and other software.</p>

View File

@ -86,6 +86,14 @@ build_finished () {
if [ $error -ne 0 ] ; then if [ $error -ne 0 ] ; then
arch_error="$arch_error "$BUILDNAME"FAIL/$error/$end/$logfile" arch_error="$arch_error "$BUILDNAME"FAIL/$error/$end/$logfile"
fi fi
case $BUILDNAME in
*FIRMWARE*)
cp log/$logfile $PUBDIRJIG-firmware/$ARCH/$BUILDNAME.log
;;
*)
cp log/$logfile $PUBDIRJIG/$ARCH/$BUILDNAME.log
;;
esac
} }
catch_parallel_builds () { catch_parallel_builds () {
@ -124,6 +132,11 @@ generate_checksums_for_arch () {
catch_live_builds () { catch_live_builds () {
# Catch parallel build types here # Catch parallel build types here
if [ "$NOLIVE"x = ""x ] && [ "$NOOPENSTACK"x = ""x ] ; then
return
fi
while [ ! -f $PUBDIRLIVETRACE ] || [ ! -f $PUBDIROSTRACE ] ; do while [ ! -f $PUBDIRLIVETRACE ] || [ ! -f $PUBDIROSTRACE ] ; do
sleep 1 sleep 1
done done
@ -147,3 +160,12 @@ arch_has_firmware () {
done done
return 1 return 1
} }
get_archive_serial () {
trace_file="$MIRROR/project/trace/ftp-master.debian.org"
if [ -f "$trace_file" ]; then
awk '/^Archive serial: / {print $3}' "$trace_file"
else
echo 'unknown'
fi
}

View File

@ -11,7 +11,7 @@ export TOPDIR
BUILDLOCK=$HOME/.debian-cd.lock BUILDLOCK=$HOME/.debian-cd.lock
export PUBDIRJIG=$PUBDIR/daily-builds export PUBDIRJIG=$PUBDIR/daily-builds
export DATE_BUILD="$DATE-$BUILDNUM" export DATE_BUILD="$DATE-$BUILDNUM"
export TESTING_SUITE=jessie export TESTING_SUITE=stretch
BUILDS_RUNNING="" BUILDS_RUNNING=""
export NI_WANTED=1 export NI_WANTED=1
@ -34,7 +34,7 @@ else
export OUT_FW_SID="" export OUT_FW_SID=""
export RSYNC_TARGET_FREE=/mnt/nfs-cdimage/.${RELEASE_BUILD} export RSYNC_TARGET_FREE=/mnt/nfs-cdimage/.${RELEASE_BUILD}
export RSYNC_TARGET_FIRMWARE=/mnt/nfs-cdimage/unofficial/non-free/cd-including-firmware/.${RELEASE_BUILD} export RSYNC_TARGET_FIRMWARE=/mnt/nfs-cdimage/unofficial/non-free/cd-including-firmware/.${RELEASE_BUILD}
export CONF=~/build.jessie/CONF.sh.${RELEASE_BUILD} export CONF=~/build.stretch/CONF.sh.${RELEASE_BUILD}
export RELEASE_BUILD=$RELEASE_BUILD export RELEASE_BUILD=$RELEASE_BUILD
export EXTENSION=".small" export EXTENSION=".small"
fi fi
@ -74,14 +74,14 @@ finalise_arch_dir () {
cd $ARCH_DIR cd $ARCH_DIR
# Only make torrent files for release builds # Only make torrent files for release builds
if [ "$RELEASE_BUILD"x != ""x ] ; then if [ "$RELEASE_BUILD"x != ""x ] ; then
~/build.jessie/mktorrent iso-cd/*iso ~/build.stretch/mktorrent iso-cd/*iso
cp iso-cd/*SUMS* bt-cd cp iso-cd/*SUMS* bt-cd
fi fi
if [ "$RELEASE_BUILD"x = ""x ] ; then if [ "$RELEASE_BUILD"x = ""x ] ; then
echo "Signing checksums files using the automatic key" echo "Signing checksums files using the automatic key"
~/build.jessie/sign-images $OUT_DIR $ARCH ~/build.stretch/sign-images $OUT_DIR $ARCH
fi fi
~/build.jessie/mklist iso-cd/*iso ~/build.stretch/mklist iso-cd/*iso
cd $TOPDIR cd $TOPDIR
fi fi
done done
@ -128,6 +128,7 @@ if lockfile -r0 $BUILDLOCK ; then
TASK=debian-installer+kernel LOGAPPEND="-1" \ TASK=debian-installer+kernel LOGAPPEND="-1" \
MAXISOS=ALL MAXJIGDOS=ALL \ MAXISOS=ALL MAXJIGDOS=ALL \
DI=sid DI_DIST="$DI_DIST" VARIANTS=xen \ DI=sid DI_DIST="$DI_DIST" VARIANTS=xen \
DI_DIR="$ARCH_DI_DIR" \
DI_WWW_HOME=default ./testingcds "amd64 i386" & DI_WWW_HOME=default ./testingcds "amd64 i386" &
fi fi
fi fi
@ -154,6 +155,7 @@ if lockfile -r0 $BUILDLOCK ; then
TASK=debian-installer+kernel LOGAPPEND="-1" \ TASK=debian-installer+kernel LOGAPPEND="-1" \
MAXISOS=ALL MAXJIGDOS=ALL \ MAXISOS=ALL MAXJIGDOS=ALL \
DI=sid DI_DIST="$DI_DIST" VARIANTS=xen \ DI=sid DI_DIST="$DI_DIST" VARIANTS=xen \
DI_DIR="$ARCH_DI_DIR" \
DI_WWW_HOME=default ./testingcds "amd64 i386" & DI_WWW_HOME=default ./testingcds "amd64 i386" &
fi fi
fi fi
@ -186,7 +188,8 @@ if lockfile -r0 $BUILDLOCK ; then
FORCE_FIRMWARE=1 CDNAME=firmware \ FORCE_FIRMWARE=1 CDNAME=firmware \
NOSUGGESTS=1 COMPLETE=0 INSTALLER_CD=C \ NOSUGGESTS=1 COMPLETE=0 INSTALLER_CD=C \
TASK=debian-installer+kernel MAXISOS=ALL MAXJIGDOS=ALL \ TASK=debian-installer+kernel MAXISOS=ALL MAXJIGDOS=ALL \
DI=sid DI_WWW_HOME=default DI_DIR="$ARCH_DI_DIR" \ DI=sid DI_WWW_HOME=default \
DI_DIR="$ARCH_DI_DIR" \
./testingcds "$arch" & ./testingcds "$arch" &
fi fi
fi fi
@ -210,7 +213,8 @@ if lockfile -r0 $BUILDLOCK ; then
OMIT_RELEASE_NOTES=1 OMIT_MANUAL=1 NORECOMMENDS=1 \ OMIT_RELEASE_NOTES=1 OMIT_MANUAL=1 NORECOMMENDS=1 \
NOSUGGESTS=1 COMPLETE=0 INSTALLER_CD=2 \ NOSUGGESTS=1 COMPLETE=0 INSTALLER_CD=2 \
TASK=debian-installer+kernel MAXISOS=ALL MAXJIGDOS=ALL \ TASK=debian-installer+kernel MAXISOS=ALL MAXJIGDOS=ALL \
DI=sid DI_WWW_HOME=default DI_DIR="$ARCH_DI_DIR" \ DI=sid DI_WWW_HOME=default \
DI_DIR="$ARCH_DI_DIR" \
./testingcds "$arch" & ./testingcds "$arch" &
fi fi
fi fi
@ -227,7 +231,7 @@ if lockfile -r0 $BUILDLOCK ; then
fi fi
# Special Mac-only builds # Special Mac-only builds
if [ "$arch" = "i386" ] ; then if [ "$arch" = "i386" ] || [ "$arch" = "amd64" ] ; then
if [ "$SID_WANTED" = "1" ] ; then if [ "$SID_WANTED" = "1" ] ; then
if [ "$NI_WANTED" = "1" ] ; then if [ "$NI_WANTED" = "1" ] ; then
build_started SIDMACNI build_started SIDMACNI
@ -235,7 +239,8 @@ if lockfile -r0 $BUILDLOCK ; then
NOSUGGESTS=1 COMPLETE=0 INSTALLER_CD=F \ NOSUGGESTS=1 COMPLETE=0 INSTALLER_CD=F \
TASK=debian-installer+kernel MAXISOS=ALL MAXJIGDOS=ALL \ TASK=debian-installer+kernel MAXISOS=ALL MAXJIGDOS=ALL \
BOOT_METHODS=BIOS CDNAME="debian-mac" \ BOOT_METHODS=BIOS CDNAME="debian-mac" \
DI=sid DI_WWW_HOME=default DI_DIR="$ARCH_DI_DIR" \ DI=sid DI_WWW_HOME=default \
DI_DIR="$ARCH_DI_DIR" \
./testingcds "$arch" & ./testingcds "$arch" &
fi fi
fi fi

View File

@ -8,12 +8,13 @@ export TOPDIR
. $TOPDIR/settings.sh . $TOPDIR/settings.sh
BUILDLOCK=$HOME/.debian-cd.lock
export PUBDIRJIG=$PUBDIR/weekly-builds export PUBDIRJIG=$PUBDIR/weekly-builds
export PUBDIROSTRACE=/mnt/nfs-cdimage/.live/trace-os export PUBDIROSTRACE=/mnt/nfs-cdimage/.live/trace-os
export PUBDIRLIVETRACE=/mnt/nfs-cdimage/.live/trace-live export PUBDIRLIVETRACE=/mnt/nfs-cdimage/.live/trace-live
export DATE_BUILD="$DATE-$BUILDNUM" export DATE_BUILD="$DATE-$BUILDNUM"
BUILDLOCK=$HOME/.debian-cd.lock export CD_I_F="/mnt/nfs-cdimage/unofficial/non-free/cd-including-firmware"
CD_I_F="/mnt/nfs-cdimage/unofficial/non-free/cd-including-firmware"
. $TOPDIR/common.sh . $TOPDIR/common.sh
@ -30,7 +31,7 @@ if [ "$RELEASE_BUILD"x = ""x ] ; then
else else
export RSYNC_TARGET=/mnt/nfs-cdimage/.${RELEASE_BUILD}/debian-cd export RSYNC_TARGET=/mnt/nfs-cdimage/.${RELEASE_BUILD}/debian-cd
export RSYNC_TARGET_FIRMWARE=${CD_I_F}/.${RELEASE_BUILD}/debian-cd export RSYNC_TARGET_FIRMWARE=${CD_I_F}/.${RELEASE_BUILD}/debian-cd
export CONF=~/build.jessie/CONF.sh.${RELEASE_BUILD} export CONF=~/build.stretch/CONF.sh.${RELEASE_BUILD}
export RELEASE_BUILD=$RELEASE_BUILD export RELEASE_BUILD=$RELEASE_BUILD
# If we're doing a normal set of daily/weekly builds, leave the # If we're doing a normal set of daily/weekly builds, leave the
# checksum filenames alone. Otherwise, make life easier for people # checksum filenames alone. Otherwise, make life easier for people
@ -51,22 +52,32 @@ fi
export DI_DIST export DI_DIST
export DI_CODENAME export DI_CODENAME
export OUT_FREE_SID=$PUBDIRJIG
export OUT_FREE_TST=$PUBDIRJIG
export OUT_FW_SID=${PUBDIRJIG}-firmware
export OUT_FW_TST=${PUBDIRJIG}-firmware
BUILDS_RUNNING="" BUILDS_RUNNING=""
export NOOPENSTACK export NOEDU=1
export NOLIVE #export NOOPENSTACK=1
#export NOLIVE=1
rm -f $PUBDIRLIVETRACE $PUBDIROSTRACE rm -f $PUBDIRLIVETRACE $PUBDIROSTRACE
~/build.jessie/cronjob.weekly-live & ~/build.stretch/cronjob.weekly-live &
if lockfile -r0 $BUILDLOCK ; then if lockfile -r0 $BUILDLOCK ; then
# echo "NOT checking for git updates" # echo "NOT checking for git updates"
echo "git update debian-cd" echo "git update debian-cd"
cd debian-cd && git pull ; cd .. cd debian-cd && git pull ; cd ..
# Keep track of the serial for the archive we're building against,
# for later archive diffing for release announce preparation:
serial=$(get_archive_serial)
echo "$serial" > $PUBDIRJIG/trace/archive-serial
# Work out the default desktop, and do *not* build a CD1 for that # Work out the default desktop, and do *not* build a CD1 for that
# desktop - it'll be done in the full set anyway # desktop - it'll be done in the full set anyway
TASKSEL_DEB=$(./debian-cd/tools/which_deb ${MIRROR} testing task-desktop binary) TASKSEL_DEB=$(ARCHES=amd64 ./debian-cd/tools/which_deb ${MIRROR} ${DI_CODENAME} task-desktop binary)
DEFAULT_DESKTOP=$(dpkg --info ${MIRROR}/${TASKSEL_DEB} | DEFAULT_DESKTOP=$(dpkg --info ${MIRROR}/${TASKSEL_DEB} |
awk '/Recommends: task-.*-desktop/ {split($2,a,"-"); print toupper(a[2])}') awk '/Recommends: task-.*-desktop/ {split($2,a,"-"); print toupper(a[2])}')
echo default desktop is $DEFAULT_DESKTOP, drop CD1 for that desktop echo default desktop is $DEFAULT_DESKTOP, drop CD1 for that desktop
@ -74,7 +85,7 @@ if lockfile -r0 $BUILDLOCK ; then
# echo "NOT checking for popcon updates" # echo "NOT checking for popcon updates"
if [ "$NOPOPCON"x = ""x ] ; then if [ "$NOPOPCON"x = ""x ] ; then
cd debian-cd && ./tools/update_popcon tasks/jessie/popularity-contest ; cd .. cd debian-cd && ./tools/update_popcon tasks/stretch/popularity-contest ; cd ..
fi fi
cd $TOPDIR cd $TOPDIR
@ -96,26 +107,8 @@ if lockfile -r0 $BUILDLOCK ; then
# export DI_DIR="$ARCH_DI_DIR" # export DI_DIR="$ARCH_DI_DIR"
export VARIANTS="" export VARIANTS=""
# Full CD set
if [ "$NOCD"x = ""x ] && [ "$NOFULLCD"x = ""x ] ; then
unset FORCE_CD_SIZE1
export MAX_PKG_SIZE=500000000
case $arch in
i386|amd64)
export MAXISOS=8; export MAXJIGDOS=ALL ;;
source)
# don't make CD ISOs for source, DVD will do
export MAXISOS=0; export MAXJIGDOS=ALL ;;
*)
export MAXISOS=3; export MAXJIGDOS=ALL ;;
esac
build_started CD
./testingcds "$arch" &
fi
# Full DVD set # Full DVD set
if [ "$NODVD"x = ""x ] ; then if [ "$NODVD"x = ""x ] ; then
unset FORCE_CD_SIZE1
export MAX_PKG_SIZE=999999999999 export MAX_PKG_SIZE=999999999999
case $arch in case $arch in
i386|amd64) i386|amd64)
@ -141,12 +134,30 @@ if lockfile -r0 $BUILDLOCK ; then
INSTALLER_CD=3 TASK=Debian-all \ INSTALLER_CD=3 TASK=Debian-all \
KERNEL_PARAMS='desktop=all' \ KERNEL_PARAMS='desktop=all' \
./testingcds "$arch" & ./testingcds "$arch" &
# Single DVD with firmware
if $(arch_has_firmware $arch) ; then
case $arch in
i386|amd64)
export VARIANTS=xen
;;
esac
build_started DVDFIRMWARE
COMPLETE=0 INSTALLER_CD=I \
FORCE_FIRMWARE=1 CDNAME=firmware \
KERNEL_PARAMS="desktop=all" \
DESKTOP=all \
TASK=Debian-all \
MAXISOS=1 MAXJIGDOS=1 \
DI=${DI} DI_DIST=${DI} \
./testingcds "$arch" &
fi
unset FORCE_CD_SIZE1
fi fi
# Full BD set # Full BD set
if [ "$NOBD"x = ""x ] ; then if [ "$NOBD"x = ""x ] ; then
unset DESKTOP unset DESKTOP
unset FORCE_CD_SIZE1
export MAX_PKG_SIZE=999999999999 export MAX_PKG_SIZE=999999999999
case $arch in case $arch in
i386|amd64|source) i386|amd64|source)
@ -168,7 +179,6 @@ if lockfile -r0 $BUILDLOCK ; then
# Full DLBD set # Full DLBD set
if [ "$NOBD"x = ""x ] && [ "$NODLBD"x = ""x ] ; then if [ "$NOBD"x = ""x ] && [ "$NODLBD"x = ""x ] ; then
unset DESKTOP unset DESKTOP
unset FORCE_CD_SIZE1
export MAX_PKG_SIZE=999999999999 export MAX_PKG_SIZE=999999999999
case $arch in case $arch in
i386|amd64|source) i386|amd64|source)
@ -189,57 +199,17 @@ if lockfile -r0 $BUILDLOCK ; then
# individual desktop cds: gnome, kde, xfce. lxde # individual desktop cds: gnome, kde, xfce. lxde
if [ "$arch"x != "source"x ] && [ "$NOCD"x = ""x ] ; then if [ "$arch"x != "source"x ] && [ "$NOCD"x = ""x ] ; then
if [ "$NOGNOMECD"x = ""x ] ; then if [ "$NOXFCECD"x = ""x ] ; then
export MAX_PKG_SIZE=300000000
export DESKTOP=gnome
export MAXISOS=1; export MAXJIGDOS=1
unset FORCE_CD_SIZE1
export VARIANTS=""
build_started GNOMECD
INSTALLER_CD=E TASK=Debian-gnome \
KERNEL_PARAMS='desktop=gnome' \
MAXCDS=1 MAXISOS=ALL MAXJIGDOS=ALL \
./testingcds "$arch" &
fi
if [ "$NOKDECD"x = ""x ] ; then
export MAX_PKG_SIZE=300000000
export DESKTOP=kde
export MAXISOS=1; export MAXJIGDOS=1
unset FORCE_CD_SIZE1
export VARIANTS=""
build_started KDECD
INSTALLER_CD=4 TASK=Debian-kde \
KERNEL_PARAMS='desktop=kde' \
MAXCDS=1 MAXISOS=ALL MAXJIGDOS=ALL \
./testingcds "$arch" &
fi
if [ "$NOXFCECD"x = ""x ] ; then
export MAX_PKG_SIZE=300000000 export MAX_PKG_SIZE=300000000
export DESKTOP=xfce export DESKTOP=xfce
export MAXISOS=1; export MAXJIGDOS=1 export MAXISOS=1; export MAXJIGDOS=1
unset FORCE_CD_SIZE1 export VARIANTS=""
export VARIANTS="" build_started XFCECD
build_started XFCECD
INSTALLER_CD=5 TASK=Debian-xfce \ INSTALLER_CD=5 TASK=Debian-xfce \
KERNEL_PARAMS='desktop=xfce' \ KERNEL_PARAMS='desktop=xfce' \
MAXCDS=1 MAXISOS=ALL MAXJIGDOS=ALL \ MAXCDS=1 MAXISOS=ALL MAXJIGDOS=ALL \
./testingcds "$arch" & ./testingcds "$arch" &
fi fi
if [ "$NOLXDECD"x = ""x ] ; then
export MAX_PKG_SIZE=300000000
export DESKTOP=lxde
export MAXISOS=1; export MAXJIGDOS=1
unset FORCE_CD_SIZE1
export VARIANTS=""
build_started LXDECD
INSTALLER_CD=A TASK=Debian-lxde \
KERNEL_PARAMS='desktop=lxde' \
MAXCDS=1 MAXISOS=ALL MAXJIGDOS=ALL \
./testingcds "$arch" &
fi
fi fi
# netinst CD # netinst CD
@ -247,12 +217,7 @@ if lockfile -r0 $BUILDLOCK ; then
export MAX_PKG_SIZE=300000000 export MAX_PKG_SIZE=300000000
export DESKTOP=all export DESKTOP=all
export MAXISOS=1; export MAXJIGDOS=1 export MAXISOS=1; export MAXJIGDOS=1
unset FORCE_CD_SIZE1
export VARIANTS="" export VARIANTS=""
export OUT_FREE_SID=$PUBDIRJIG
export OUT_FREE_TST=$PUBDIRJIG
export OUT_FW_SID=${PUBDIRJIG}-firmware
export OUT_FW_TST=${PUBDIRJIG}-firmware
build_started NI build_started NI
OMIT_RELEASE_NOTES=1 OMIT_MANUAL=1 NORECOMMENDS=1 \ OMIT_RELEASE_NOTES=1 OMIT_MANUAL=1 NORECOMMENDS=1 \
@ -275,7 +240,8 @@ if lockfile -r0 $BUILDLOCK ; then
./testingcds "$arch" & ./testingcds "$arch" &
fi fi
if [ "$arch" = "i386" ] ; then # Special Mac-only builds
if [ "$arch" = "i386" ] || [ "$arch" = "amd64" ] ; then
build_started MACNI build_started MACNI
OMIT_RELEASE_NOTES=1 OMIT_MANUAL=1 NORECOMMENDS=1 \ OMIT_RELEASE_NOTES=1 OMIT_MANUAL=1 NORECOMMENDS=1 \
NOSUGGESTS=1 COMPLETE=0 INSTALLER_CD=F \ NOSUGGESTS=1 COMPLETE=0 INSTALLER_CD=F \
@ -303,20 +269,23 @@ if lockfile -r0 $BUILDLOCK ; then
if [ "$arch_error"x = "none"x ] ; then if [ "$arch_error"x = "none"x ] ; then
if [ "$RELEASE_BUILD"x = ""x ] ; then if [ "$RELEASE_BUILD"x = ""x ] ; then
echo "Signing checksums files using the automatic key" echo "Signing checksums files using the automatic key"
~/build.jessie/sign-images $PUBDIRJIG $arch ~/build.stretch/sign-images $PUBDIRJIG $arch
fi fi
echo " Running ~/build.jessie/iso_run $PUBDIRJIG/ $RSYNC_TARGET/ $arch &" echo " Running ~/build.stretch/iso_run $PUBDIRJIG/ $RSYNC_TARGET/ $arch &"
~/build.jessie/iso_run $PUBDIRJIG/ $RSYNC_TARGET/ $arch & ~/build.stretch/iso_run $PUBDIRJIG/ $RSYNC_TARGET/ $arch &
if [ -d $PUBDIRJIG-firmware/$arch ] ; then if [ -d $PUBDIRJIG-firmware/$arch ] ; then
if [ "$RELEASE_BUILD"x = ""x ] ; then if [ "$RELEASE_BUILD"x = ""x ] ; then
echo "Signing checksums files using the automatic key" echo "Signing checksums files using the automatic key"
~/build.jessie/sign-images $PUBDIRJIG-firmware $ARCH ~/build.stretch/sign-images $PUBDIRJIG-firmware $ARCH
fi fi
echo " Running ~/build.jessie/iso_run ${PUBDIRJIG}-firmware/ $RSYNC_TARGET_FIRMWARE/ $arch &" echo " Running ~/build.stretch/iso_run ${PUBDIRJIG}-firmware/ $RSYNC_TARGET_FIRMWARE/ $arch &"
~/build.jessie/iso_run ${PUBDIRJIG}-firmware/ $RSYNC_TARGET_FIRMWARE/ $arch & ~/build.stretch/iso_run ${PUBDIRJIG}-firmware/ $RSYNC_TARGET_FIRMWARE/ $arch &
fi fi
else else
~/build.jessie/report_build_error $RSYNC_TARGET $arch "$arch_error" ~/build.stretch/report_build_error $PUBDIRJIG $RSYNC_TARGET $arch "$arch_error"
if [ -d ${PUBDIRJIG}-firmware/$arch ] ; then
~/build.stretch/report_build_error ${PUBDIRJIG}-firmware $RSYNC_TARGET_FIRMWARE/ $arch "$arch_error"
fi
fi fi
fi fi
else # multi-arch else # multi-arch
@ -340,12 +309,40 @@ if lockfile -r0 $BUILDLOCK ; then
MAXCDS=1 MAXISOS=ALL MAXJIGDOS=ALL \ MAXCDS=1 MAXISOS=ALL MAXJIGDOS=ALL \
VARIANTS=xen \ VARIANTS=xen \
./testingcds "i386 amd64 source" & ./testingcds "i386 amd64 source" &
# DVD with firmware
if $(arch_has_firmware $arch) ; then
build_started DVDFIRMWARE
INSTALLER_CD=J TASK=Debian-all \
FORCE_FIRMWARE=1 CDNAME=firmware \
KERNEL_PARAMS="desktop=all" \
MAXCDS=1 MAXISOS=ALL MAXJIGDOS=ALL \
VARIANTS=xen \
DI=${DI} DI_DIST=${DI} \
./testingcds "i386 amd64 source" &
fi
unset FORCE_CD_SIZE1
fi fi
if [ "$NOCD"x = ""x ] && [ "$NONI"x = ""x ] ; then if [ "$NOEDU"x = ""x ] && [ "$NOUSB"x = ""x ] ; then
if $(arch_has_firmware $arch) ; then
build_started FIRMWAREEDUUSB
OMIT_RELEASE_NOTES=1 OMIT_MANUAL=1 NORECOMMENDS=1 \
NOSUGGESTS=1 COMPLETE=0 INSTALLER_CD=H \
FORCE_FIRMWARE=1 CDNAME=debian-edu-firmware \
DEBIAN_EDU=1 \
KERNEL_PARAMS="desktop=kde" \
DESKTOP=kde VARIANTS=xen \
EXCLUDE=debian-edu-exclude \
UDEB_EXCLUDE="$BASEDIR"/data/$CODENAME/udeb_exclude \
TASK=Debian-edu-full \
MAXISOS=1 MAXJIGDOS=1 \
DI=${DI} DI_DIST=${DI} \
./testingcds "amd64 i386" &
fi
fi
if [ "$NOCD"x = ""x ] && [ "$NONI"x = ""x ] ; then
export DESKTOP=all export DESKTOP=all
export OUT_FREE_SID=$PUBDIRJIG
export OUT_FREE_TST=$PUBDIRJIG
build_started NI build_started NI
OMIT_RELEASE_NOTES=1 OMIT_MANUAL=1 NORECOMMENDS=1 \ OMIT_RELEASE_NOTES=1 OMIT_MANUAL=1 NORECOMMENDS=1 \
NOSUGGESTS=1 COMPLETE=0 INSTALLER_CD=2 \ NOSUGGESTS=1 COMPLETE=0 INSTALLER_CD=2 \
@ -368,7 +365,25 @@ if lockfile -r0 $BUILDLOCK ; then
DI=${DI} DI_DIST=${DI} \ DI=${DI} DI_DIST=${DI} \
./testingcds "amd64 i386" & ./testingcds "amd64 i386" &
fi fi
fi
if [ "$NOEDU"x = ""x ] ; then
if $(arch_has_firmware $arch) ; then
build_started NIFIRMWAREEDU
OMIT_RELEASE_NOTES=1 OMIT_MANUAL=1 NORECOMMENDS=1 \
NOSUGGESTS=1 COMPLETE=0 INSTALLER_CD=G \
FORCE_FIRMWARE=1 CDNAME=debian-edu-firmware \
DEBIAN_EDU=1 \
KERNEL_PARAMS="desktop=kde" \
DESKTOP=kde VARIANTS=xen \
EXCLUDE=debian-edu-exclude \
UDEB_EXCLUDE="$BASEDIR"/data/$CODENAME/udeb_exclude \
TASK=Debian-edu-netinst \
MAXISOS=1 MAXJIGDOS=1 \
DI=${DI} DI_DIST=${DI} \
./testingcds "amd64 i386" &
fi
fi
fi
catch_parallel_builds catch_parallel_builds
@ -385,20 +400,23 @@ if lockfile -r0 $BUILDLOCK ; then
if [ "$arch_error"x = "none"x ] || [ "$arch_error"x = ""x ] ; then if [ "$arch_error"x = "none"x ] || [ "$arch_error"x = ""x ] ; then
if [ "$RELEASE_BUILD"x = ""x ] ; then if [ "$RELEASE_BUILD"x = ""x ] ; then
echo "Signing checksums files using the automatic key" echo "Signing checksums files using the automatic key"
~/build.jessie/sign-images $PUBDIRJIG multi-arch ~/build.stretch/sign-images $PUBDIRJIG multi-arch
fi fi
echo " Running ~/build.jessie/iso_run $PUBDIRJIG/ $RSYNC_TARGET/ multi-arch &" echo " Running ~/build.stretch/iso_run $PUBDIRJIG/ $RSYNC_TARGET/ multi-arch &"
~/build.jessie/iso_run $PUBDIRJIG/ $RSYNC_TARGET/ multi-arch & ~/build.stretch/iso_run $PUBDIRJIG/ $RSYNC_TARGET/ multi-arch &
if [ -d $PUBDIRJIG-firmware/multi-arch ] ; then if [ -d $PUBDIRJIG-firmware/multi-arch ] ; then
if [ "$RELEASE_BUILD"x = ""x ] ; then if [ "$RELEASE_BUILD"x = ""x ] ; then
echo "Signing checksums files using the automatic key" echo "Signing checksums files using the automatic key"
~/build.jessie/sign-images $PUBDIRJIG-firmware multi-arch ~/build.stretch/sign-images $PUBDIRJIG-firmware multi-arch
fi fi
echo " Running ~/build.jessie/iso_run ${PUBDIRJIG}-firmware/ $RSYNC_TARGET_FIRMWARE/ multi-arch &" echo " Running ~/build.stretch/iso_run ${PUBDIRJIG}-firmware/ $RSYNC_TARGET_FIRMWARE/ multi-arch &"
~/build.jessie/iso_run ${PUBDIRJIG}-firmware/ $RSYNC_TARGET_FIRMWARE/ multi-arch & ~/build.stretch/iso_run ${PUBDIRJIG}-firmware/ $RSYNC_TARGET_FIRMWARE/ multi-arch &
fi fi
else else
~/build.jessie/report_build_error $RSYNC_TARGET multi-arch "$arch_error" ~/build.stretch/report_build_error ${PUBDIRJIG} $RSYNC_TARGET multi-arch "$arch_error"
if [ -d ${PUBDIRJIG}-firmware/multi-arch ] ; then
~/build.stretch/report_build_error ${PUBDIRJIG}-firmware $RSYNC_TARGET_FIRMWARE/ $multi-arch "$arch_error"
fi
fi fi
fi fi
fi # end of multi-arch fi # end of multi-arch
@ -406,12 +424,12 @@ if lockfile -r0 $BUILDLOCK ; then
done done
# Generate HEADER.html files # Generate HEADER.html files
~/build.jessie/generate_headers $RSYNC_TARGET ~/build.stretch/generate_headers $RSYNC_TARGET ""
~/build.jessie/generate_headers $RSYNC_TARGET_FIRMWARE ~/build.stretch/generate_headers $RSYNC_TARGET_FIRMWARE firmware
if [ "$NOFW"x = ""x ] ; then if [ "$NOFW"x = ""x ] ; then
~/build.jessie/generate_firmware_images jessie ~/build.stretch/generate_firmware_images stretch
~/build.jessie/generate_firmware_images sid ~/build.stretch/generate_firmware_images sid
fi fi
if [ "$NOSNAP"x = ""x ] ; then if [ "$NOSNAP"x = ""x ] ; then

View File

@ -4,46 +4,26 @@ now () {
date -u +%F:%H:%M:%S date -u +%F:%H:%M:%S
} }
START=`now`
ERROR=0
if [ "$NOOPENSTACK"x = ""x ] ; then
echo " Running openstack build"
~/live/bin/run-openstack
ERROR=$?
if [ $ERROR -eq 0 ] ; then
if [ "$RELEASE_BUILD"x = ""x ] ; then
~/build.jessie/sign-images /mnt/nfs-cdimage/.live/new/openstack-jessie ""
mv /mnt/nfs-cdimage/.live/new/openstack-jessie/* /mnt/nfs-cdimage/openstack/testing
else
mkdir -p /mnt/nfs-cdimage/.${RELEASE_BUILD}
mv /mnt/nfs-cdimage/.live/new/openstack-jessie/* /mnt/nfs-cdimage/.${RELEASE_BUILD}/openstack
fi
fi
# Wait for the KVM to shut down cleanly
sleep 30
fi
END=`now`
echo -e "start=$START\nend=$END\nerror=$ERROR\nlogfile=\n" > $PUBDIROSTRACE
START=`now` START=`now`
ERROR=0 ERROR=0
if [ "$NOLIVE"x = ""x ] ; then if [ "$NOLIVE"x = ""x ] ; then
echo " Running debian-live build" echo " Running debian live build"
~/live/bin/run-live ~/live/bin/run-live
ERROR=$? ERROR=$?
if [ $ERROR -eq 0 ] ; then if [ $ERROR -eq 0 ] ; then
if [ "$RELEASE_BUILD"x = ""x ] ; then if [ "$RELEASE_BUILD"x = ""x ] ; then
~/build.jessie/sign-images /mnt/nfs-cdimage/.live/new/free "" ~/build.stretch/sign-images /mnt/nfs-cdimage/.live/new/free ""
mv -f /mnt/nfs-cdimage/weekly-live-builds /mnt/nfs-cdimage/weekly-live-builds.old mv -f /mnt/nfs-cdimage/weekly-live-builds /mnt/nfs-cdimage/weekly-live-builds.old
mv /mnt/nfs-cdimage/.live/new/free/ /mnt/nfs-cdimage/weekly-live-builds mv /mnt/nfs-cdimage/.live/new/free/ /mnt/nfs-cdimage/weekly-live-builds
rm -rf /mnt/nfs-cdimage/weekly-live-builds.old rm -rf /mnt/nfs-cdimage/weekly-live-builds.old
~/build.jessie/sign-images /mnt/nfs-cdimage/.live/new/non-free "" ~/build.stretch/sign-images /mnt/nfs-cdimage/.live/new/non-free ""
mv -f ${CD_I_F}/weekly-live-builds ${CD_I_F}/weekly-live-builds.old mv -f ${CD_I_F}/weekly-live-builds ${CD_I_F}/weekly-live-builds.old
mv /mnt/nfs-cdimage/.live/new/non-free ${CD_I_F}/weekly-live-builds mv /mnt/nfs-cdimage/.live/new/non-free ${CD_I_F}/weekly-live-builds
rm -rf ${CD_I_F}/weekly-live-builds.old rm -rf ${CD_I_F}/weekly-live-builds.old
else else
mkdir -p /mnt/nfs-cdimage/.${RELEASE_BUILD}/ mkdir -p /mnt/nfs-cdimage/.${RELEASE_BUILD}/
rm -rf /mnt/nfs-cdimage/.${RELEASE_BUILD}/live-*
mv /mnt/nfs-cdimage/.live/new/free/ /mnt/nfs-cdimage/.${RELEASE_BUILD}/live-free mv /mnt/nfs-cdimage/.live/new/free/ /mnt/nfs-cdimage/.${RELEASE_BUILD}/live-free
mv /mnt/nfs-cdimage/.live/new/non-free /mnt/nfs-cdimage/.${RELEASE_BUILD}/live-non-free mv /mnt/nfs-cdimage/.live/new/non-free /mnt/nfs-cdimage/.${RELEASE_BUILD}/live-non-free
fi fi
@ -52,6 +32,47 @@ if [ "$NOLIVE"x = ""x ] ; then
sleep 30 sleep 30
fi fi
END=`now` END=`now`
echo -e "start=$START\nend=$END\nerror=$ERROR\nlogfile=\n" > $PUBDIRLIVETRACE if [ "$PUBDIRLIVETRACE"x != ""x ] ; then
echo -e "start=$START\nend=$END\nerror=$ERROR\nlogfile=\n" > $PUBDIRLIVETRACE
fi
START=`now`
ERROR=0
if [ "$NOOPENSTACK"x = ""x ] ; then
echo " Running openstack builds"
if [ "$NOOPENSTACKamd64"x = ""x ] ; then
~/live/bin/run-openstack amd64
ERROR=$(($ERROR + $?))
# Wait for the VM to shut down cleanly
sleep 30
fi
if [ "$NOOPENSTACKarm64"x = ""x ] ; then
~/live/bin/run-openstack arm64
ERROR=$(($ERROR + $?))
# Wait for the VM to shut down cleanly
sleep 30
fi
if [ $ERROR -eq 0 ] ; then
mkdir -p /mnt/nfs-cdimage/.live/new/openstack-stretch
mv -v /mnt/nfs-cdimage/.live/new/openstack-stretch-*/*.* /mnt/nfs-cdimage/.live/new/openstack-stretch
for SUM in MD5 SHA1 SHA256 SHA512; do
cat /mnt/nfs-cdimage/.live/new/openstack-stretch-*/${SUM}SUMS > /mnt/nfs-cdimage/.live/new/openstack-stretch/${SUM}SUMS
done
if [ "$RELEASE_BUILD"x = ""x ] ; then
~/build.stretch/sign-images /mnt/nfs-cdimage/.live/new/openstack-stretch ""
mv /mnt/nfs-cdimage/.live/new/openstack-stretch/* /mnt/nfs-cdimage/openstack/testing
cp ~/build.stretch/openstack-header.html /mnt/nfs-cdimage/openstack/testing/HEADER.html
else
mkdir -p /mnt/nfs-cdimage/.${RELEASE_BUILD}
rm -rf /mnt/nfs-cdimage/.${RELEASE_BUILD}/openstack
mv /mnt/nfs-cdimage/.live/new/openstack-stretch /mnt/nfs-cdimage/.${RELEASE_BUILD}/openstack
cp ~/build.stretch/openstack-header.html /mnt/nfs-cdimage/.${RELEASE_BUILD}/openstack/HEADER.html
fi
fi
fi
END=`now`
if [ "$PUBDIROSTRACE"x != ""x ] ; then
echo -e "start=$START\nend=$END\nerror=$ERROR\nlogfile=\n" > $PUBDIROSTRACE
fi
exit 0 exit 0

View File

@ -1,7 +1,7 @@
<h1>Daily "firmware" build #BUILDNUM for ARCH, using installer build from INST_VER</h1> <h1>Daily "firmware" build #BUILDNUM for ARCH, using installer build from INST_VER</h1>
<p>These images will install the testing version of Debian, currently <p>These images will install the testing version of Debian, currently
<strong>Jessie</strong>. They include non-free firmware to make <strong>Stretch</strong>. They include non-free firmware to make
installation easier on some systems requiring proprietary but installation easier on some systems requiring proprietary but
redistributable redistributable
firmware. See <a href="http://wiki.debian.org/Firmware">http://wiki.debian.org/Firmware</a> firmware. See <a href="http://wiki.debian.org/Firmware">http://wiki.debian.org/Firmware</a>

View File

@ -1,7 +1,7 @@
<h1>Daily build #BUILDNUM for ARCH, using installer build from INST_VER</h1> <h1>Daily build #BUILDNUM for ARCH, using installer build from INST_VER</h1>
<p>These images will install the testing version of Debian, currently <p>These images will install the testing version of Debian, currently
<strong>Jessie</strong>.</p> <strong>Stretch</strong>.</p>
<p>See the <a href="/cdimage/daily-builds/">top-level daily <p>See the <a href="/cdimage/daily-builds/">top-level daily
directory</a> for more information about the daily builds.</p> directory</a> for more information about the daily builds.</p>

View File

@ -14,14 +14,19 @@ if [ "$SUITE"x = ""x ] ; then
fi fi
# Do stuff here! # Do stuff here!
export TDIR=/org/cdbuilder.debian.org/dst/deb-cd/tmp/firmware export TDIR=/srv/cdbuilder.debian.org/dst/deb-cd/tmp/firmware
export BASEDIR=$TOPDIR/debian-cd export BASEDIR=$TOPDIR/debian-cd
mkdir -p $TDIR mkdir -p $TDIR
fakeroot $BASEDIR/tools/make-firmware-image $MIRROR $SUITE $TDIR fakeroot $BASEDIR/tools/make-firmware-image $MIRROR $SUITE $TDIR
DATE=`date +%Y%m%d` DATE=`date +%Y%m%d`
mkdir -p $OUT/$SUITE/$DATE mkdir -p $OUT/$SUITE/$DATE
mv $TDIR/firmware*.* $OUT/$SUITE/$DATE/ mv $TDIR/firmware*.* $TDIR/*SUMS $OUT/$SUITE/$DATE/
if [ "$RELEASE_BUILD"x = ""x ] ; then
echo "Signing firmware checksums files using the automatic key"
~/build.stretch/sign-images $OUT/$SUITE/$DATE ""
fi
# Update the current link, and delete the old surplus builds. Keep up # Update the current link, and delete the old surplus builds. Keep up
# to 3 # to 3

View File

@ -1,6 +1,9 @@
#!/bin/bash #!/bin/bash
INPUT=~/build/HEADER.html.in . ~/build.stretch/settings.sh
. ~/build.stretch/common.sh
INPUT=~/build.stretch/HEADER.html.in
CPP="cpp -traditional -undef -P -C -nostdinc" CPP="cpp -traditional -undef -P -C -nostdinc"
if [ "$1"x = ""x ] ; then if [ "$1"x = ""x ] ; then
@ -8,10 +11,22 @@ if [ "$1"x = ""x ] ; then
exit 1 exit 1
fi fi
if [ "$2"x = "firmware"x ] ; then
FIRMWARE="-DFIRMWARE"
IN_FW=1
fi
cd $1 cd $1
for DIR in *; do for DIR in *; do
if [ -d $DIR ] && [ $DIR != trace ] ; then if [ -d $DIR ] && [ $DIR != trace ] ; then
ARCH=$DIR ARCH=$DIR
if [ "$IN_FW"x = ""x ]; then
if $(arch_has_firmware $ARCH) ; then
FIRMWARE="-DARCH_HAS_FIRMWARE"
else
FIRMWARE=""
fi
fi
case $ARCH in case $ARCH in
i386|amd64|arm64) i386|amd64|arm64)
EXTRAS="-DISOHYBRID" EXTRAS="-DISOHYBRID"
@ -43,7 +58,7 @@ for DIR in *; do
UPDATES="-DUPDATES" UPDATES="-DUPDATES"
fi fi
#echo "Found directory $DIR (ARCH $ARCH, STYLE $STYLE, TYPE $TYPE)" #echo "Found directory $DIR (ARCH $ARCH, STYLE $STYLE, TYPE $TYPE)"
$CPP -DARCH=${ARCH} -DARCH${ARCH} -DKERNEL=${KERNEL} -DSTYLE${STYLE} -DSTYLE=${STYLE} -DTYPE${TYPE} $UPDATES $EXTRAS $INPUT > $DIR1/HEADER.html $CPP -DARCH=${ARCH} -DARCH${ARCH} -DKERNEL=${KERNEL} -DSTYLE${STYLE} -DSTYLE=${STYLE} -DTYPE${TYPE} $UPDATES $EXTRAS $FIRMWARE $INPUT > $DIR1/HEADER.html
done done
fi fi
done done

View File

@ -1,2 +1,2 @@
DI_DIST=jessie DI_DIST=stretch
DI_CODENAME=$DI_DIST DI_CODENAME=$DI_DIST

View File

@ -6,7 +6,7 @@ PUBDIRJIG=$1
RSYNC_TARGET=$2 RSYNC_TARGET=$2
ARCH=$3 ARCH=$3
LOG=~/build.jessie/log/$ARCH.iso_run LOG=~/build.stretch/log/$ARCH.iso_run
HOSTNAME=`hostname -f` HOSTNAME=`hostname -f`
LOCK=~/iso_run.lock LOCK=~/iso_run.lock
START=`date -u +%H:%M:%S` START=`date -u +%H:%M:%S`
@ -33,7 +33,7 @@ process_iso() {
cp -a $FILE $OUTDIR/$FILE cp -a $FILE $OUTDIR/$FILE
if [ "$RELEASE_BUILD"x != ""x ] ; then if [ "$RELEASE_BUILD"x != ""x ] ; then
~/build.jessie/mktorrent $FILE >> $LOG ~/build.stretch/mktorrent $FILE >> $LOG
BTFILE=`echo $FILE.torrent | sed 's/iso-/bt-/'` BTFILE=`echo $FILE.torrent | sed 's/iso-/bt-/'`
echo $OUTDIR/$BTFILE >> $LOG echo $OUTDIR/$BTFILE >> $LOG
cp -a $BTFILE $OUTDIR/$BTFILE cp -a $BTFILE $OUTDIR/$BTFILE
@ -92,11 +92,15 @@ copy_files() {
if [ "$RELEASE_BUILD"x = ""x ] ; then if [ "$RELEASE_BUILD"x = ""x ] ; then
# Only populate the HEADER.html file for regular weekly # Only populate the HEADER.html file for regular weekly
# builds; we don't want it for releases # builds; we don't want it for releases
DATE=`date -u` HUM_DATE=`date -u`
sed "s/ARCH/$ARCH/g;s/DATE/$DATE/g" ~/build.jessie/weekly.html \ sed "s/ARCH/$ARCH/g;s/DATE/$HUM_DATE/g" ~/build.stretch/weekly.html \
> $TARGET/$ARCH.tmp/HEADER.html > $TARGET/$ARCH.tmp/HEADER.html
fi fi
mkdir -p $TARGET/$ARCH.tmp/log/$DATE
cp *.log $TARGET/$ARCH.tmp/log/$DATE
ln -sf $DATE $TARGET/$ARCH.tmp/log/success
# Now clean up any directories without any real content # Now clean up any directories without any real content
# (i.e. empty dir, or just containing checksum files) # (i.e. empty dir, or just containing checksum files)
for dir in $TARGET/$ARCH.tmp/*-* ; do for dir in $TARGET/$ARCH.tmp/*-* ; do

View File

@ -12,7 +12,14 @@ for FILE in $@; do
# Add 2 http seeds: the release path *and* the archive path - # Add 2 http seeds: the release path *and* the archive path -
# hopefully clients will use whichever is available! # hopefully clients will use whichever is available!
VER=$(echo ${FILE} | sed 's,^.*/debian-,,;s,-.*$,,') case ${FILE} in
*live*)
VER=$(echo ${FILE} | sed 's,^.*/debian-\(live-\)*,,;s,-.*$,,')"-live"
;;
*)
VER=$(echo ${FILE} | sed 's,^.*/debian-*,,;s,-.*$,,')
;;
esac
HTTP1="${HTTPBASE}/release/${VER}/${FILE}" HTTP1="${HTTPBASE}/release/${VER}/${FILE}"
HTTP2="${HTTPBASE}/archive/${VER}/${FILE}" HTTP2="${HTTPBASE}/archive/${VER}/${FILE}"
$MKTORRENT http://bttracker.debian.org:6969/announce \ $MKTORRENT http://bttracker.debian.org:6969/announce \

View File

@ -5,9 +5,10 @@ export TOPDIR=$(dirname $0)
. $TOPDIR/settings.sh . $TOPDIR/settings.sh
. $TOPDIR/common.sh . $TOPDIR/common.sh
OUTDIR=$1 PUBDIRJIG=$1
ARCH=$2 OUTDIR=$2
RESULTS=$3 ARCH=$3
RESULTS=$4
OUTFILE=$OUTDIR/$ARCH/HEADER.html OUTFILE=$OUTDIR/$ARCH/HEADER.html
INLOGS="/org/cdbuilder.debian.org/dst/deb-cd/log" INLOGS="/org/cdbuilder.debian.org/dst/deb-cd/log"
@ -22,6 +23,9 @@ if [ $? -ne 0 ] ; then
echo "<p>Later weekly builds failed with errors:</p>" >> $OUTFILE echo "<p>Later weekly builds failed with errors:</p>" >> $OUTFILE
fi fi
mkdir -p $OUTDIR/$ARCH/log/$DATE
cp $PUBDIRJIG/$ARCH/*.log $OUTDIR/$ARCH/log/$DATE
echo "<hr>" >> $OUTFILE echo "<hr>" >> $OUTFILE
echo "<ul>" >> $OUTFILE echo "<ul>" >> $OUTFILE
mkdir -p ${OUTDIR}/${ARCH}/${OUTLOGS} mkdir -p ${OUTDIR}/${ARCH}/${OUTLOGS}
@ -30,10 +34,9 @@ for RESULT in $RESULTS; do
ERROR=`echo $RESULT | awk -F / '{print $2}'` ERROR=`echo $RESULT | awk -F / '{print $2}'`
DATE=`echo $RESULT | awk -F / '{print $3}'` DATE=`echo $RESULT | awk -F / '{print $3}'`
LOGFILE=`echo $RESULT | awk -F / '{print $4}'` LOGFILE=`echo $RESULT | awk -F / '{print $4}'`
BUILDTYPE=`echo $TYPE | sed 's/FAIL//g'` BUILDNAME=`echo $TYPE | sed 's/FAIL//g'`
cp ${INLOGS}/${LOGFILE} ${OUTDIR}/${ARCH}/${OUTLOGS}/${BUILDTYPE}.log DESC=`build_description ${BUILDNAME}`
DESC=`build_description ${BUILDTYPE}` echo "<li>$DESC build failed with error $ERROR at $DATE; <a href=\"log/$DATE/${BUILDNAME}.log\">logfile</a>" >> $OUTFILE
echo "<li>$DESC build failed with error $ERROR at $DATE; <a href=\"$OUTLOGS/${BUILDTYPE}.log\">logfile</a>" >> $OUTFILE
done done
echo "</ul>" >> $OUTFILE echo "</ul>" >> $OUTFILE

View File

@ -1,12 +1,12 @@
export TRACE=/org/cdbuilder.debian.org/src/ftp/debian/project/trace/pettersson.debian.org export TRACE=/srv/cdbuilder.debian.org/src/ftp/debian/project/trace/pettersson.debian.org
export ARCH_DI_DIR=/org/cdbuilder.debian.org/src/deb-cd/d-i export ARCH_DI_DIR=/srv/cdbuilder.debian.org/src/deb-cd/d-i
export HOSTNAME=`hostname -f` export HOSTNAME=`hostname -f`
export PUBDIR=/org/cdbuilder.debian.org/dst/deb-cd export PUBDIR=/srv/cdbuilder.debian.org/dst/deb-cd
export MIRROR=/org/cdbuilder.debian.org/src/ftp/debian export MIRROR=/srv/cdbuilder.debian.org/src/ftp/debian
export BASEDIR=~/build.jessie/debian-cd export BASEDIR=~/build.stretch/debian-cd
export MKISOFS=~/build.jessie/mkisofs/usr/bin/mkisofs export MKISOFS=~/build.stretch/mkisofs/usr/bin/mkisofs
if [ "$DATE"x = ""x ] ; then if [ "$DATE"x = ""x ] ; then
export DATE=`date -u +%Y%m%d` export DATE=`date -u +%Y%m%d`
fi fi
@ -14,11 +14,11 @@ fi
export EXTRACTED_SOURCES=/mnt/nfs-cdimage/cd-sources export EXTRACTED_SOURCES=/mnt/nfs-cdimage/cd-sources
if [ "$ARCHES"x = ""x ] ; then if [ "$ARCHES"x = ""x ] ; then
ARCHES="i386 source amd64 multi-arch arm64 armel armhf ppc64el mips mipsel s390x powerpc" ARCHES="i386 amd64 armhf multi-arch armel source arm64 ppc64el mips mipsel mips64el s390x"
fi fi
if [ "$ARCHES_FIRMWARE"x = ""x ] ; then if [ "$ARCHES_FIRMWARE"x = ""x ] ; then
ARCHES_FIRMWARE="amd64 i386 powerpc multi-arch" ARCHES_FIRMWARE="amd64 i386 multi-arch"
# ARCHES_FIRMWARE="amd64" # ARCHES_FIRMWARE="amd64"
fi fi

View File

@ -9,10 +9,18 @@ KEYID=42468F4009EA8AC3
cd $DIR/$ARCH cd $DIR/$ARCH
# Sigh. GPG2 needs a different command line :-(
# Try to detect what we have
gpg --help | grep -q "server mode"
if [ $? -eq 0 ] ; then
GPG2_OPTS=" --pinentry-mode=loopback"
fi
for file in $(find . -name '*SUMS' \ for file in $(find . -name '*SUMS' \
-o -name *SUMS.small \ -o -name *SUMS.small \
-o -name *SUMS.large); do -o -name *SUMS.large); do
gpg -q -a --detach-sign \ gpg -q -a --detach-sign \
$GPG2_OPTS \
--batch --no-tty \ --batch --no-tty \
--passphrase-file ~/.testing-pass \ --passphrase-file ~/.testing-pass \
-u $KEYID \ -u $KEYID \

View File

@ -13,11 +13,11 @@
#set -x #set -x
if [ "$CONF"x = ""x ] ; then if [ "$CONF"x = ""x ] ; then
CONF=~/build.jessie/CONF.sh CONF=~/build.stretch/CONF.sh
fi fi
export CF=$CONF export CF=$CONF
if [ "$DCD_DIR"x = ""x ] ; then if [ "$DCD_DIR"x = ""x ] ; then
DCD_DIR=~/build.jessie/debian-cd DCD_DIR=~/build.stretch/debian-cd
fi fi
export CF=$CONF export CF=$CONF
@ -60,9 +60,9 @@ export LOGFILE="$LOG/$RUN"
case "$INSTALLER_CD" in case "$INSTALLER_CD" in
1) 1)
export DISKTYPE=BC;; export DISKTYPE=BC;;
2|7|8|C|F) 2|7|8|C|F|G)
export DISKTYPE=NETINST;; export DISKTYPE=NETINST;;
3|6) 3|6|I|J)
export OUT_TYPE=dvd export OUT_TYPE=dvd
export DISKTYPE=DVD;; export DISKTYPE=DVD;;
4) 4)
@ -81,9 +81,18 @@ case "$INSTALLER_CD" in
export DISKTYPE=DLBD;; export DISKTYPE=DLBD;;
E) E)
export DISKTYPE=gnome-CD;; export DISKTYPE=gnome-CD;;
H)
export OUT_TYPE=bd
export DISKTYPE=BD;;
*) export DISKTYPE=CD;; *) export DISKTYPE=CD;;
esac esac
if [ "$DEBIAN_EDU"x = "1"x ] ; then
# Different logo for the debian-edu images
export LOGOPNG="$DCD_DIR/data/$DI_CODENAME/debian-edu-installer-logo.png"
export SPLASHPNG="$DCD_DIR/data/$DI_CODENAME/splash-skolelinux.png"
fi
if [ "$OUT_TYPE"x = ""x ] ; then if [ "$OUT_TYPE"x = ""x ] ; then
OUT_TYPE=cd OUT_TYPE=cd
fi fi
@ -128,6 +137,14 @@ elif [ "$INSTALLER_CD" = "E" ]; then
export OFFICIAL="Official Gnome CD Snapshot" export OFFICIAL="Official Gnome CD Snapshot"
elif [ "$INSTALLER_CD" = "F" ]; then elif [ "$INSTALLER_CD" = "F" ]; then
export OFFICIAL="Official Mac Netinst" export OFFICIAL="Official Mac Netinst"
elif [ "$INSTALLER_CD" = "G" ]; then
export OFFICIAL="Official Debian-Edu Multi-Arch Netinst"
elif [ "$INSTALLER_CD" = "H" ]; then
export OFFICIAL="Official Debian-Edu Multi-Arch Image"
elif [ "$INSTALLER_CD" = "I" ]; then
export OFFICIAL="Unofficial DVD including firmware"
elif [ "$INSTALLER_CD" = "J" ]; then
export OFFICIAL="Unofficial Multi-Arch DVD including firmware"
fi fi
rm -rf "$OUT" rm -rf "$OUT"
@ -155,34 +172,32 @@ else
SUMS_EXTENSION=".${INSTALLER_CD}" SUMS_EXTENSION=".${INSTALLER_CD}"
fi fi
if [ "$FORCE_FIRMWARE"x = "1"x ] ; then
if [ "${DI}" = "sid" ] ; then
ARCHDIR=$OUT_FW_SID/$OUTARCH
else
ARCHDIR=$OUT_FW_TST/$OUTARCH
fi
else # non-FW build
if [ "${DI}" = "sid" ] ; then
ARCHDIR=$OUT_FREE_SID/$OUTARCH
else
ARCHDIR=$OUT_FREE_TST/$OUTARCH
fi
fi
# Do the actual building # Do the actual building
START=`now` START=`now`
if ./build.sh "$ARCH" >>"$LOGFILE" 2>&1 ; then if ./build.sh "$ARCH" >>"$LOGFILE" 2>&1 ; then
# if it went ok get things ready for publishing # if it went ok get things ready for publishing
# we treat the daily netinst images in a different way # we treat the daily netinst images in a different way
if [ "$INSTALLER_CD" = "1" ] || \ if [ "$DISKTYPE" = "NETINST" ] || \
[ "$INSTALLER_CD" = "2" ] || \ [ "$DISKTYPE" = "BC" ] ; then
[ "$INSTALLER_CD" = "C" ] || \
[ "$INSTALLER_CD" = "F" ] ; then
################################## ##################################
# NETINST STUFF # NETINST STUFF
################################## ##################################
if [ "$INSTALLER_CD" = "C" ] ; then
if [ "${DI}" = "sid" ] ; then
ARCHDIR=$OUT_FW_SID/$OUTARCH
else
ARCHDIR=$OUT_FW_TST/$OUTARCH
fi
else # non-FW build
if [ "${DI}" = "sid" ] ; then
ARCHDIR=$OUT_FREE_SID/$OUTARCH
else
ARCHDIR=$OUT_FREE_TST/$OUTARCH
fi
fi
mkdir -p $ARCHDIR/list-cd $ARCHDIR/jigdo-cd $ARCHDIR/iso-cd mkdir -p $ARCHDIR/list-cd $ARCHDIR/jigdo-cd $ARCHDIR/iso-cd
# put the isos and jigdos in their place # put the isos and jigdos in their place
@ -223,19 +238,19 @@ if ./build.sh "$ARCH" >>"$LOGFILE" 2>&1 ; then
fi fi
done done
mkdir -p "$PUBDIRJIG"/$OUTARCH/jigdo-${OUT_TYPE} mkdir -p $ARCHDIR/jigdo-${OUT_TYPE}
mv "$OUT"/*.template "$PUBDIRJIG"/$OUTARCH/jigdo-${OUT_TYPE} mv "$OUT"/*.template $ARCHDIR/jigdo-${OUT_TYPE}
mv "$OUT"/*.jigdo "$PUBDIRJIG"/$OUTARCH/jigdo-${OUT_TYPE} mv "$OUT"/*.jigdo $ARCHDIR/jigdo-${OUT_TYPE}
mkdir -p "$PUBDIRJIG"/$OUTARCH/iso-${OUT_TYPE} mkdir -p $ARCHDIR/iso-${OUT_TYPE}
for file in "$OUT"/*.iso; do for file in "$OUT"/*.iso; do
if [ -e $file ] ; then if [ -e $file ] ; then
mv $file "$PUBDIRJIG"/$OUTARCH/iso-${OUT_TYPE} mv $file $ARCHDIR/iso-${OUT_TYPE}
fi fi
done done
mkdir -p "$PUBDIRJIG"/$OUTARCH/list-${OUT_TYPE} mkdir -p $ARCHDIR/list-${OUT_TYPE}
mv "$OUT"/*list*gz "$PUBDIRJIG"/$OUTARCH/list-${OUT_TYPE} mv "$OUT"/*list*gz $ARCHDIR/list-${OUT_TYPE}
END=`now` END=`now`
echo -e "start=$START\nend=$END\nerror=0\nlogfile=$RUN\n" > "$PUBDIRJIG"/$OUTARCH/$TRACEFILE echo -e "start=$START\nend=$END\nerror=0\nlogfile=$RUN\n" > "$PUBDIRJIG"/$OUTARCH/$TRACEFILE

View File

@ -4,3 +4,5 @@
information about the weekly builds.</p> information about the weekly builds.</p>
<p>This build finished at <strong>DATE</strong>.</p> <p>This build finished at <strong>DATE</strong>.</p>
<p>Logs are in the <a href="log/success">log/success</a> directory.</p>