summaryrefslogtreecommitdiff
path: root/run-bootstrap-in-chroot
diff options
context:
space:
mode:
authorLars Wirzenius <lars.wirzenius@codethink.co.uk>2012-02-14 18:40:47 +0000
committerLars Wirzenius <lars.wirzenius@codethink.co.uk>2012-02-14 18:40:47 +0000
commit3d57e79f596bc82595b8c667d384ff72a5ec76f5 (patch)
tree49afdb924574f706ace6068b4f41ef3a9866e7ab /run-bootstrap-in-chroot
parent142924173c6721dde887e2859840de2d3ad88997 (diff)
downloadmorph-3d57e79f596bc82595b8c667d384ff72a5ec76f5.tar.gz
Make run-bootstrap-in-chroot snapshot pass2
This changes the meaning of $1 for baserock-bootstrap: $1 now specifies which pass to run. When building passX, X > 1, the previous passes are assumed to have been built successfully.
Diffstat (limited to 'run-bootstrap-in-chroot')
-rwxr-xr-xrun-bootstrap-in-chroot24
1 files changed, 20 insertions, 4 deletions
diff --git a/run-bootstrap-in-chroot b/run-bootstrap-in-chroot
index 184d35e6..9cd55604 100755
--- a/run-bootstrap-in-chroot
+++ b/run-bootstrap-in-chroot
@@ -84,7 +84,7 @@ then
cp baserock-bootstrap "$dir/." #update bootstrap script
else
cp baserock-bootstrap "$dir/."
- "./do-squeeze-chroot" bash -x baserock-bootstrap true || exit 1
+ "./do-squeeze-chroot" bash -x baserock-bootstrap pass1 || exit 1
if "$snapshot"
then
tar -C "$dir" -caf "$snapshotdir/pass1-snapshot.tar" .
@@ -98,6 +98,22 @@ mkdir "$dir/tree/baserock/gits"
mkdir "$dir/tree/baserock/gits/morph"
cp -r . "$dir/tree/baserock/gits/morph/."
-# Run pass2 of bootstrap. This actually runs pass1 too, but quickly, since
-# it's already built.
-"./do-squeeze-chroot" bash -x baserock-bootstrap false || exit 1
+# Unpack existing snapshot, or run pass2 of bootstrap and then make snapshot.
+if "$snapshot" && [ -e "$snapshotdir/pass2-snapshot.tar" ]
+then
+ tar -C "$dir" -xf "$snapshotdir/pass2-snapshot.tar"
+ cp baserock-bootstrap "$dir/." #update bootstrap script
+else
+ cp baserock-bootstrap "$dir/."
+ "./do-squeeze-chroot" bash -x baserock-bootstrap pass2 || exit 1
+ if "$snapshot"
+ then
+ tar -C "$dir" -caf "$snapshotdir/pass2-snapshot.tar" .
+ fi
+fi
+
+# Run pass3 of bootstrap.
+"./do-squeeze-chroot" bash -x baserock-bootstrap pass3 || exit 1
+
+echo "Passes 1, 2, and 3 of bootstrap done (possibly cached)."
+