Commit c7d94591 authored by Natanael Copa's avatar Natanael Copa
Browse files

buildrepo: support for -k option for keep-going

This option will make buildrepo continue build even if some package
fails. It is an 'build what you can' option.
parent 212ba263
......@@ -26,6 +26,7 @@ usage() {
echo " -d Set destination repository base dir to REPODIR instead of $repodir"
echo " -h Show this help and exit"
echo " -l Send build to logfile, prefixed by LOGPREFIX"
echo " -k Keep going, even if packages fails"
echo " -p Purge obsolete packages from REPODIR after build"
echo " -r Dependencies are found in DEPREPO"
exit 1
......@@ -85,7 +86,7 @@ list_needbuild() {
cd "$aportsdir/$repo" || return 0
# first we try copy everything possible and find out which we need
# to rebuild. By doing this we might save us for rebuilding
# to rebuild. By doing this we might save us for rebuilding
# needed when running 'abuild -R'
for apkbuild in */APKBUILD; do
[ -f "$aportsdir/$repo/$apkbuild" ] || continue
......@@ -131,11 +132,15 @@ do_build() {
local needbuild="$(list_needbuild $repo)"
export REPODEST="$repodir"
export ABUILD_BLACKLIST
# build the postponed packages if any
if [ -n "$needbuild" ]; then
for i in $needbuild; do
cd "$aportsdir/$repo"/${i%/*} || return 1
abuild -k -R || return 1
if ! abuild -k -R; then
[ -n "$keep_going" ] || return 1
ABUILD_BLACKLIST="$ABUILD_BLACKLIST $i"
fi
done
fi
......@@ -174,11 +179,12 @@ do_build() {
rm -f tmp.*
}
while getopts "a:d:hl:pr:" opt; do
while getopts "a:d:hkl:pr:" opt; do
case "$opt" in
a) aportsdir=$OPTARG;;
d) repodir=$OPTARG;;
h) usage >&2;;
k) keep_going=1;;
l) logprefix=$OPTARG;;
p) dopurge=1;;
r) deprepo="$deprepo $OPTARG";;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment