From 6fbda9a7b3708383cedc6f1e549a3144175a0702 Mon Sep 17 00:00:00 2001 From: Avery Pennarun Date: Sat, 2 Feb 2019 23:54:27 -0500 Subject: [PATCH] docs/cookbook/container: don't delete *.out and *.code during build. If mkdocs is running in parallel, it can get upset if one of these files exists when it lists the directory, but doesn't exist when it goes to generate the output. Fundamentally this is a problem in mkdocs more than in our code, but we might as well avoid it. --- docs/cookbook/container/.gitignore | 2 ++ docs/cookbook/container/clean.do | 4 ++-- docs/cookbook/container/default.runkvm.do | 11 +++++------ 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/docs/cookbook/container/.gitignore b/docs/cookbook/container/.gitignore index 6cc4ebd..c444069 100644 --- a/docs/cookbook/container/.gitignore +++ b/docs/cookbook/container/.gitignore @@ -3,6 +3,7 @@ debootstrap debian libs simple +*.code *.dockjson *.fakeroot *.fs @@ -11,6 +12,7 @@ simple *.initrd *.layer *.list +*.out *.runkvm *.runlocal *.rundocker diff --git a/docs/cookbook/container/clean.do b/docs/cookbook/container/clean.do index 24431d6..8899f0b 100644 --- a/docs/cookbook/container/clean.do +++ b/docs/cookbook/container/clean.do @@ -1,6 +1,6 @@ rm -rf *~ .*~ simple libs debian \ *.fs debian.fakeroot *.gz \ - *.dockjson *.image *.image.gz *.initrd \ - *.layer *.list \ + *.code *.dockjson *.image *.image.gz *.initrd \ + *.out *.layer *.list \ *.runkvm *.runlocal *.rundocker \ *.sha256 diff --git a/docs/cookbook/container/default.runkvm.do b/docs/cookbook/container/default.runkvm.do index 287ed3a..2b3ef0c 100644 --- a/docs/cookbook/container/default.runkvm.do +++ b/docs/cookbook/container/default.runkvm.do @@ -1,7 +1,7 @@ ./need.sh python kvm busybox redo-ifchange "$2.initrd" memcalc.py -rm -f "$3.out" "$3.code" +rm -f "$1.out" "$1.code" # Linux only allows an initrd of size < 50% of RAM, # so set a RAM amount based on the initrd size. @@ -16,18 +16,17 @@ kvm \ -no-reboot \ -display none \ -chardev stdio,mux=on,id=char0 \ - -chardev file,id=char1,path="$3.out" \ - -chardev file,id=char2,path="$3.code" \ + -chardev file,id=char1,path="$1.out" \ + -chardev file,id=char2,path="$1.code" \ -serial chardev:char0 \ -serial chardev:char1 \ -serial chardev:char2 >&2 -read rv <$3.code || true +read rv <$1.code || true [ -z "$rv" ] && exit 99 if [ "$rv" -eq 0 ]; then - sed -e 's/\r//g' "$3.out" >$3 + sed -e 's/\r//g' "$1.out" >$3 echo "ok." >&2 else echo "kvm program returned error: $rv" >&2 fi -rm -f "$3.out" "$3.code" exit "$rv"