gentoo-asahi-releng/tools/catalyst-auto-x86-experimental.conf
Mike Frysinger cb652173f6 catalyst-auto: move remaining configs from pre_build to update_symlinks
All the configs running symlink updates in pre_build can do it in the
update_symlinks callback instead.  Convert them over.
2018-01-15 20:44:31 -05:00

102 lines
2.6 KiB
Bash

# This is the config file for the catalyst-auto script. It should be pretty
# self-explanatory.
ARCH="x86"
TYPE="experimental"
host=$(hostname)
source /etc/catalyst/release/build.env
SPECS_DIR=${REPO_DIR}/releases/weekly/specs/${ARCH}
SETS="
i486
i686
hardened
"
SET_i486_SPECS="stage1.spec stage2.spec stage3.spec"
SET_i486_OPTIONAL_SPECS="installcd-stage1.spec installcd-stage2-minimal.spec"
SET_i686_SPECS="i686/stage1.spec i686/stage2.spec i686/stage3.spec"
SET_hardened_SPECS="hardened/stage1.spec hardened/stage2.spec hardened/stage3.spec"
SET_hardened_OPTIONAL_SPECS="hardened/admincd-stage1.spec hardened/admincd-stage2.spec"
KCONFIG_DIR=${REPO_DIR}/releases/weekly/kconfig/${ARCH}
EXTENSIONS="[.tar.xz,.tar.bz2,.tar.gz,.tar,.sfs]"
give_latest_from_dates() {
sed 's,-20,~20,g' | \
sort -k +1 -n -t '~' |\
awk -F\~ \
'BEGIN{i=$1; o=$0};
{ if($1 != i && i != "") { print o; }; i=$1; o=$0; }
END { print o; };' | \
tr '~' '-'
}
update_symlinks() {
# Symlink the latest stages3 to build from
for d in ${BUILD_SRCDIR_BASE}/{default,hardened} ; do
pushd $d >/dev/null
for f in $(ls stage3*${EXTENSIONS} | grep -v latest | give_latest_from_dates ) ; do
of=${f/20[0-9][0-9].[0-9]/latest} # for 20XX.Y stuff
of=${of/20[0-9][0-9][0-1][0-9][0-9][0-9]/latest} # for 20YYMMDD stuff
ln -sf $f $of
done
popd >/dev/null
done
}
post_build() {
cmd=(
rsync
-e 'ssh -i /root/.ssh/id_rsa'
-a
--omit-dir-times
--delay-updates
)
case $HOSTNAME in
nightheron)
DEST_DEFAULT=${BUILD_DESTDIR_BASE}
DEST_HARDENED=${BUILD_DESTDIR_BASE}/hardened
;;
*)
DEST_DEFAULT=${ARCH}@nightheron.gentoo.org:${BUILD_DESTDIR_BASE}
DEST_HARDENED=${ARCH}@nightheron.gentoo.org:${BUILD_DESTDIR_BASE}/hardened
;;
esac
pushd ${BUILD_SRCDIR_BASE}/default >/dev/null
mkdir -p ${TMPDIR}/empty
"${cmd[@]}" ${TMPDIR}/empty ${DEST_DEFAULT}
for file in $(ls stage{3,4}*{${DATESTAMP},${TIMESTAMP}}*${EXTENSIONS} ); do
if [ -f $file ]; then
"${cmd[@]}" ${file}* ${DEST_DEFAULT}
fi
done
if [ -f *${DATESTAMP}*.iso ]; then
"${cmd[@]}" *${DATESTAMP}*.iso* ${DEST_DEFAULT}
elif [ -f *${TIMESTAMP}*.iso ]; then
"${cmd[@]}" *${TIMESTAMP}*.iso* ${DEST_DEFAULT}
fi
popd >/dev/null
pushd ${BUILD_SRCDIR_BASE}/hardened >/dev/null
"${cmd[@]}" ${TMPDIR}/empty ${DEST_HARDENED}
for file in $(ls stage{3,4}*{${DATESTAMP},${TIMESTAMP}}*${EXTENSIONS} ); do
if [ -f $file ]; then
"${cmd[@]}" $file* ${DEST_HARDENED}
fi
done
if [ -f *${DATESTAMP}*.iso ]; then
"${cmd[@]}" *${DATESTAMP}*.iso* ${DEST_HARDENED}
elif [ -f *${TIMESTAMP}*.iso ]; then
"${cmd[@]}" *${TIMESTAMP}*.iso* ${DEST_HARDENED}
fi
popd >/dev/null
}
# vim:ft=sh: