build: more flavour awareness

Looks solid now.  Smaller issues can be ironed out when the next
release is due.  Enjoy. :)
This commit is contained in:
Franco Fichtner 2015-05-07 10:51:35 +02:00
parent a63303ada9
commit cc048ebf9f
3 changed files with 29 additions and 20 deletions

View File

@ -32,6 +32,9 @@ export PRODUCT_VERSION=${PRODUCT_VERSION:-"`date '+%Y%m%d%H%M'`"}
export PRODUCT_FLAVOUR=${PRODUCT_FLAVOUR:-"OpenSSL"}
export PRODUCT_NAME="OPNsense"
# full name for easy use
export PRODUCT_RELEASE="${PRODUCT_NAME}-${PRODUCT_VERSION}_${PRODUCT_FLAVOUR}"
# code reositories
export TOOLSDIR="/usr/tools"
export PORTSDIR="/usr/ports"
@ -57,10 +60,10 @@ export SETSDIR="/tmp/sets"
mkdir -p ${STAGEDIR} ${PACKAGESDIR} ${IMAGESDIR} ${SETSDIR}
# target files
export CDROM="${IMAGESDIR}/${PRODUCT_NAME}-${PRODUCT_VERSION}-cdrom-${ARCH}.iso"
export SERIALIMG="${IMAGESDIR}/${PRODUCT_NAME}-${PRODUCT_VERSION}-serial-${ARCH}.img"
export VGAIMG="${IMAGESDIR}/${PRODUCT_NAME}-${PRODUCT_VERSION}-vga-${ARCH}.img"
export NANOIMG="${IMAGESDIR}/${PRODUCT_NAME}-${PRODUCT_VERSION}-nano-${ARCH}.img"
export CDROM="${IMAGESDIR}/${PRODUCT_RELEASE}-cdrom-${ARCH}.iso"
export SERIALIMG="${IMAGESDIR}/${PRODUCT_RELEASE}-serial-${ARCH}.img"
export VGAIMG="${IMAGESDIR}/${PRODUCT_RELEASE}-vga-${ARCH}.img"
export NANOIMG="${IMAGESDIR}/${PRODUCT_RELEASE}-nano-${ARCH}.img"
# print environment to showcase all of our variables
env

View File

@ -29,7 +29,7 @@ set -e
. ./common.sh
rm -f ${SETSDIR}/packages-*-${ARCH}.tar
rm -f ${SETSDIR}/packages-*_${PRODUCT_FLAVOUR}-${ARCH}.tar
setup_stage ${STAGEDIR}
@ -52,8 +52,9 @@ fi
# generate index files
pkg repo ${STAGEDIR} ${SIGNARGS}
echo -n ">>> Creating packages set... "
echo -n ">>> Creating package mirror set for ${PRODUCT_RELEASE}... "
tar -C ${STAGEDIR} -cf ${SETSDIR}/packages-${PRODUCT_VERSION}-${ARCH}.tar .
tar -C ${STAGEDIR} -cf \
${SETSDIR}/packages-${PRODUCT_VERSION}_${PRODUCT_FLAVOUR}-${ARCH}.tar .
echo "done"

View File

@ -43,13 +43,13 @@ if [ -n "${1}" ]; then
fi
fi
rm -f ${SETSDIR}/release-*-${ARCH}.tar
rm -f ${SETSDIR}/release-*_${PRODUCT_FLAVOUR}-${ARCH}.tar
echo ">>> Creating packages for ${PRODUCT_VERSION}"
echo ">>> Creating packages for ${PRODUCT_RELEASE}"
cd ${TOOLSDIR}/build && ./packages.sh
echo ">>> Creating images for ${PRODUCT_VERSION}"
echo ">>> Creating images for ${PRODUCT_RELEASE}"
cd ${TOOLSDIR}/build && ./clean.sh images
cd ${TOOLSDIR}/build && ./memstick.sh
@ -58,23 +58,28 @@ cd ${TOOLSDIR}/build && ./iso.sh
setup_stage ${STAGEDIR}
echo ">>> Compressing images for ${PRODUCT_VERSION}"
echo -n ">>> Compressing images for ${PRODUCT_RELEASE}... "
mv ${IMAGESDIR}/${PRODUCT_NAME}-* ${STAGEDIR}
for IMAGE in $(ls ${STAGEDIR}/${PRODUCT_NAME}-*); do
mv ${IMAGESDIR}/${PRODUCT_RELEASE}-* ${STAGEDIR}
for IMAGE in $(ls ${STAGEDIR}/${PRODUCT_RELEASE}-*); do
bzip2 ${IMAGE} &
done
wait
echo "done"
echo -n ">>> Checksumming images for ${PRODUCT_RELEASE}... "
mkdir -p ${STAGEDIR}/tmp
echo ">>> Checksumming images for ${PRODUCT_VERSION}"
cd ${STAGEDIR} && sha256 ${PRODUCT_NAME}-* > tmp/${PRODUCT_NAME}-${PRODUCT_VERSION}-checksums-${ARCH}.sha256
cd ${STAGEDIR} && md5 ${PRODUCT_NAME}-* > tmp/${PRODUCT_NAME}-${PRODUCT_VERSION}-checksums-${ARCH}.md5
cd ${STAGEDIR} && sha256 ${PRODUCT_RELEASE}-* > tmp/${PRODUCT_RELEASE}-checksums-${ARCH}.sha256
cd ${STAGEDIR} && md5 ${PRODUCT_RELEASE}-* > tmp/${PRODUCT_RELEASE}-checksums-${ARCH}.md5
mv tmp/* .
rm -rf tmp
echo ">>> Bundling images for ${PRODUCT_VERSION}"
echo "done"
tar -cf ${SETSDIR}/release-${PRODUCT_VERSION}-${ARCH}.tar .
echo -n ">>> Bundling images for ${PRODUCT_RELEASE}... "
tar -cf ${SETSDIR}/release-${PRODUCT_VERSION}_${PRODUCT_FLAVOUR}-${ARCH}.tar .
echo "done"