summaryrefslogtreecommitdiff
path: root/tests.as-root
diff options
context:
space:
mode:
authorSam Thursfield <sam.thursfield@codethink.co.uk>2012-11-07 13:35:24 +0000
committerSam Thursfield <sam.thursfield@codethink.co.uk>2012-11-07 18:53:48 +0000
commit25067e0ff261577da0ace26126c01e2829d7e5b7 (patch)
tree1f24da22376aece658ddffb02d6273c0298452be /tests.as-root
parent3853f1986ca04deee5d470f9f5f181556bcd29ed (diff)
downloadmorph-25067e0ff261577da0ace26126c01e2829d7e5b7.tar.gz
Factor out setup code from 'morph build' tests into separate file
Diffstat (limited to 'tests.as-root')
-rwxr-xr-xtests.as-root/building-a-system-branch-multiple-times-doesnt-generate-new-artifacts.script21
-rwxr-xr-xtests.as-root/building-a-system-branch-works-anywhere.script24
-rwxr-xr-xtests.as-root/building-creates-correct-temporary-refs.script20
-rw-r--r--tests.as-root/setup-build33
4 files changed, 36 insertions, 62 deletions
diff --git a/tests.as-root/building-a-system-branch-multiple-times-doesnt-generate-new-artifacts.script b/tests.as-root/building-a-system-branch-multiple-times-doesnt-generate-new-artifacts.script
index 56fd08cf..60093f97 100755
--- a/tests.as-root/building-a-system-branch-multiple-times-doesnt-generate-new-artifacts.script
+++ b/tests.as-root/building-a-system-branch-multiple-times-doesnt-generate-new-artifacts.script
@@ -27,26 +27,7 @@ then
exit 0
fi
-source "$SRCDIR/scripts/fix-committer-info"
-
-# Initialise the workspace.
-cd "$DATADIR/workspace"
-"$SRCDIR/scripts/test-morph" init
-
-# Create a new local system branch.
-"$SRCDIR/scripts/test-morph" branch test:morphs-repo branch1
-
-# Edit linux.
-"$SRCDIR/scripts/test-morph" edit linux-system linux-stratum linux
-
-# Fix the UUIDs being used for the temporary refs.
-git config -f "$DATADIR/workspace/branch1/.morph-system-branch/config" \
- branch.uuid 123456789
-git config -f "$DATADIR/workspace/branch1/test:morphs-repo/.git/config" \
- morph.uuid 987654321
-git config -f "$DATADIR/workspace/branch1/test:kernel-repo/.git/config" \
- morph.uuid AABBCCDDE
-
+source "$SRCDIR/tests.as-root/setup-build"
# Build once.
cd "$DATADIR/workspace"
diff --git a/tests.as-root/building-a-system-branch-works-anywhere.script b/tests.as-root/building-a-system-branch-works-anywhere.script
index 462963e0..b402355e 100755
--- a/tests.as-root/building-a-system-branch-works-anywhere.script
+++ b/tests.as-root/building-a-system-branch-works-anywhere.script
@@ -26,29 +26,7 @@ then
exit 0
fi
-source "$SRCDIR/scripts/fix-committer-info"
-
-# Initialise the workspace.
-cd "$DATADIR/workspace"
-"$SRCDIR/scripts/test-morph" init
-
-# Create a new local system branch.
-"$SRCDIR/scripts/test-morph" branch test:morphs-repo branch1
-
-# Edit linux.
-"$SRCDIR/scripts/test-morph" edit linux-system linux-stratum linux
-
-# Fix the UUIDs being used for the temporary refs. This is needed
-# because the system and stratum morphologies will have references
-# to the temporary build refs and that will affect the artifact
-# cache keys. If we fix the UUIDs, the artifact cache keys will
-# always be the same.
-git config -f "$DATADIR/workspace/branch1/.morph-system-branch/config" \
- branch.uuid 123456789
-git config -f "$DATADIR/workspace/branch1/test:morphs-repo/.git/config" \
- morph.uuid 987654321
-git config -f "$DATADIR/workspace/branch1/test:kernel-repo/.git/config" \
- morph.uuid AABBCCDDE
+source "$SRCDIR/tests.as-root/setup-build"
# Build from the workspace root.
cd "$DATADIR/workspace"
diff --git a/tests.as-root/building-creates-correct-temporary-refs.script b/tests.as-root/building-creates-correct-temporary-refs.script
index c3ee7019..c69eb6a8 100755
--- a/tests.as-root/building-creates-correct-temporary-refs.script
+++ b/tests.as-root/building-creates-correct-temporary-refs.script
@@ -19,25 +19,7 @@
set -eu
-source "$SRCDIR/scripts/fix-committer-info"
-
-# Initialise the workspace.
-cd "$DATADIR/workspace"
-"$SRCDIR/scripts/test-morph" init
-
-# Create a new local system branch.
-"$SRCDIR/scripts/test-morph" branch test:morphs-repo branch1
-
-# Edit linux.
-"$SRCDIR/scripts/test-morph" edit linux-system linux-stratum linux
-
-# Fix the UUIDs being used for the temporary refs.
-git config -f "$DATADIR/workspace/branch1/.morph-system-branch/config" \
- branch.uuid 123456789
-git config -f "$DATADIR/workspace/branch1/test:morphs-repo/.git/config" \
- morph.uuid 987654321
-git config -f "$DATADIR/workspace/branch1/test:kernel-repo/.git/config" \
- morph.uuid AABBCCDDE
+source "$SRCDIR/tests.as-root/setup-build"
# Build the linux system from the system branch.
cd "$DATADIR/workspace"
diff --git a/tests.as-root/setup-build b/tests.as-root/setup-build
new file mode 100644
index 00000000..8d6e6612
--- /dev/null
+++ b/tests.as-root/setup-build
@@ -0,0 +1,33 @@
+#!/bin/bash
+# Copyright (C) 2012 Codethink Limited
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+# Fixture for tests involving 'morph build'
+
+source "$SRCDIR/scripts/fix-committer-info"
+
+cd "$DATADIR/workspace"
+"$SRCDIR/scripts/test-morph" init
+"$SRCDIR/scripts/test-morph" branch test:morphs branch1
+"$SRCDIR/scripts/test-morph" edit linux-system linux-stratum linux
+
+# Fix UUID's in the checked out repos to make build branch names deterministic
+git config -f "$DATADIR/workspace/branch1/.morph-system-branch/config" \
+ branch.uuid 123456789
+git config -f "$DATADIR/workspace/branch1/test:morphs/.git/config" \
+ morph.uuid 987654321
+git config -f "$DATADIR/workspace/branch1/test:kernel-repo/.git/config" \
+ morph.uuid AABBCCDDE
+