diff options
Diffstat (limited to 'tests.deploy')
-rwxr-xr-x | tests.deploy/deploy-cluster.script | 46 | ||||
-rwxr-xr-x | tests.deploy/deploy-rawdisk-without-disk-size-fails.script | 2 | ||||
-rwxr-xr-x | tests.deploy/deploy-rawdisk.script | 4 | ||||
-rwxr-xr-x | tests.deploy/setup | 57 |
4 files changed, 105 insertions, 4 deletions
diff --git a/tests.deploy/deploy-cluster.script b/tests.deploy/deploy-cluster.script new file mode 100755 index 00000000..917ac717 --- /dev/null +++ b/tests.deploy/deploy-cluster.script @@ -0,0 +1,46 @@ +#!/bin/bash +# +# Copyright (C) 2013 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. + + +# Test "morph deploy" by deploying the systems in cluster morphology. + + +set -eu + + +. "$SRCDIR/tests.deploy/setup-build" + +cd "$DATADIR/workspace/branch1" + +"$SRCDIR/scripts/test-morph" build hello-system + +"$SRCDIR/scripts/test-morph" build linux-system + +"$SRCDIR/scripts/test-morph" --log "$DATADIR/deploy.log" \ + deploy test_cluster \ + linux-system-2.HOSTNAME="baserock-rocks-even-more" \ + > /dev/null + +test -e hello-system.img +test -e linux-system-1.tar +test -e linux-system-2.tar + +hostname1=$(tar -xf linux-system-1.tar ./etc/hostname -O) +hostname2=$(tar -xf linux-system-2.tar ./etc/hostname -O) + +[ "$hostname1" = baserock-rocks ] +[ "$hostname2" = baserock-rocks-even-more ] diff --git a/tests.deploy/deploy-rawdisk-without-disk-size-fails.script b/tests.deploy/deploy-rawdisk-without-disk-size-fails.script index 94084a5c..035557dd 100755 --- a/tests.deploy/deploy-rawdisk-without-disk-size-fails.script +++ b/tests.deploy/deploy-rawdisk-without-disk-size-fails.script @@ -25,6 +25,6 @@ set -eu cd "$DATADIR/workspace/branch1" "$SRCDIR/scripts/test-morph" build linux-system ! "$SRCDIR/scripts/test-morph" --log "$DATADIR/deploy.log" \ - deploy rawdisk linux-system "$DATADIR/disk.img" > /dev/null 2>&1 + deploy rawdisk_test_cluster_without_disk_size > /dev/null 2>&1 test ! -e "$DATADIR/disk.img" diff --git a/tests.deploy/deploy-rawdisk.script b/tests.deploy/deploy-rawdisk.script index bead945b..ebda50c7 100755 --- a/tests.deploy/deploy-rawdisk.script +++ b/tests.deploy/deploy-rawdisk.script @@ -26,6 +26,6 @@ set -eu cd "$DATADIR/workspace/branch1" "$SRCDIR/scripts/test-morph" build linux-system "$SRCDIR/scripts/test-morph" --log "$DATADIR/deploy.log" \ - deploy rawdisk linux-system "$DATADIR/disk.img" DISK_SIZE=1G > /dev/null -test -e "$DATADIR/disk.img" + deploy rawdisk_test_cluster > /dev/null +test -e disk.img diff --git a/tests.deploy/setup b/tests.deploy/setup index 584ce039..88488a91 100755 --- a/tests.deploy/setup +++ b/tests.deploy/setup @@ -166,11 +166,67 @@ cat <<EOF > linux-system.morph "repo": "test:morphs", "ref": "master" } + ], + "configuration-extensions": [ + set-hostname ] + } EOF git add linux-system.morph + +cat <<EOF > rawdisk_test_cluster.morph +name: rawdisk_test_cluster +kind: cluster +systems: + - morph: linux-system + deploy: + linux-system-1: + type: rawdisk + location: disk.img + DISK_SIZE: 1G +EOF +git add rawdisk_test_cluster.morph + +cat <<EOF > rawdisk_test_cluster_without_disk_size.morph +name: rawdisk_test_cluster_without_disk_size +kind: cluster +systems: + - morph: linux-system + deploy: + linux-system-1: + type: rawdisk + location: disk.img +EOF +git add rawdisk_test_cluster_without_disk_size.morph + +cat <<EOF > test_cluster.morph +name: test_cluster +kind: cluster +systems: + - morph: hello-system + deploy-defaults: + type: tar + deploy: + hello-system: + type: rawdisk + location: hello-system.img + DISK_SIZE: 1G + - morph: linux-system + deploy-defaults: + HOSTNAME: "baserock-rocks" + deploy: + linux-system-1: + type: tar + location: linux-system-1.tar + linux-system-2: + type: tar + location: linux-system-2.tar +EOF +git add test_cluster.morph + + git commit --quiet -m "add morphs" # Make a dummy kernel chunk. @@ -202,4 +258,3 @@ no-distcc = true quiet = true log = /tmp/morph.log EOF - |