diff options
author | Richard Maw <richard.maw@gmail.com> | 2014-09-24 16:55:06 +0000 |
---|---|---|
committer | Richard Maw <richard.maw@gmail.com> | 2014-10-01 09:30:15 +0000 |
commit | fd6e7adca086e86657efdcd0a10cb1d2b3c8ad1e (patch) | |
tree | e65283d4486b303a1bc012a5257dcbe3dda950bb | |
parent | 5ac9f90a64cdadaf4d9adb243c6be2f0f4d1764a (diff) | |
download | morph-fd6e7adca086e86657efdcd0a10cb1d2b3c8ad1e.tar.gz |
Remove unused cmdtests
tests.deploy is gone since we have yarn coverage instead.
tests/setup had unnecessary setup in it, since the remaining tests
require custom setup anyway.
A bunch of tests were disabled anyway, so they're gone.
Also, there was still code in ./check to run tests.merging, which have
been gone for a while.
-rwxr-xr-x | check | 14 | ||||
-rwxr-xr-x | tests.as-root/build-handles-stratum-build-depends.script | 50 | ||||
-rwxr-xr-x | tests.as-root/build-with-external-strata.script | 62 | ||||
-rwxr-xr-x | tests.as-root/build-with-push.script | 38 | ||||
-rwxr-xr-x | tests.as-root/building-a-system-branch-multiple-times-doesnt-generate-new-artifacts.script | 43 | ||||
-rwxr-xr-x | tests.as-root/building-a-system-branch-picks-up-committed-removes.script | 62 | ||||
-rwxr-xr-x | tests.as-root/building-a-system-branch-works-anywhere.script | 61 | ||||
-rwxr-xr-x | tests.deploy/deploy-cluster.script | 60 | ||||
-rw-r--r-- | tests.deploy/deploy-cluster.stdout | 2 | ||||
-rwxr-xr-x | tests.deploy/deploy-rawdisk-without-disk-size-fails.script | 30 | ||||
-rwxr-xr-x | tests.deploy/deploy-rawdisk.script | 33 | ||||
-rwxr-xr-x | tests.deploy/setup | 216 | ||||
-rw-r--r-- | tests.deploy/setup-build | 35 | ||||
-rwxr-xr-x | tests/setup | 74 |
14 files changed, 0 insertions, 780 deletions
@@ -153,20 +153,6 @@ else echo "NOT RUNNING test.branching" fi -if false && "$run_cmdtests" -then - cmdtest tests.merging -else - echo "NOT RUNNING test.merging" -fi - -if "$run_cmdtests" -then - cmdtest tests.deploy -else - echo "NOT RUNNING test.deploy" -fi - # Building systems requires the 'filter' parameter of tarfile.TarFile.add(): # this was introduced in Python 2.7 if ! "$run_cmdtests"; then diff --git a/tests.as-root/build-handles-stratum-build-depends.script b/tests.as-root/build-handles-stratum-build-depends.script deleted file mode 100755 index 6e6f82da..00000000 --- a/tests.as-root/build-handles-stratum-build-depends.script +++ /dev/null @@ -1,50 +0,0 @@ -#!/bin/bash -# Copyright (C) 2012-2014 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. - -## "morph build" should update the build-depends fields of strata correctly. - -# FIXME: The new "morph edit" seems to be changing build-dependencies -# (correctly) in a way that makes the old "morph build" fail, due to -# this error: -# -# Conflicting versions of stratum 'hello-stratum' appear in the build. -# -# I cannot find a way to fix the old "morph build", and so I'm disabling -# this test until it can be fixed. --liw -exit 0 - -set -eu - -. "$SRCDIR/tests.as-root/setup-build" - -cd "$DATADIR/workspace" -"$SRCDIR/scripts/test-morph" branch test:morphs test/stratum-build-depends - -cd test/stratum-build-depends/test/morphs - -# 'linux-system' and the build-depends fields of 'linux-stratum' need to -# be updated here. Any build-depends of any altered strata also need to -# be altered, such as the 'tools-stratum' which depends on linux-stratum -# If they are not updated, the build command will fail. -"$SRCDIR/scripts/test-morph" edit linux-system hello-stratum - -# Likewise, this command must update build-depends or the 'repo' field will -# not be changed in the temporary build branch, leading to: -# -# ERROR: Ref test/stratum-build-depends is an invalid reference for -# repo file://TMP/morphs -# -"$SRCDIR/scripts/test-morph" build linux-system diff --git a/tests.as-root/build-with-external-strata.script b/tests.as-root/build-with-external-strata.script deleted file mode 100755 index be870053..00000000 --- a/tests.as-root/build-with-external-strata.script +++ /dev/null @@ -1,62 +0,0 @@ -#!/bin/bash -# Copyright (C) 2012-2014 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. - - -## "morph build" with strata outside the branch root repository. - -# FIXME: The new "morph edit" breaks this, for reasons unknown. Disabling -# it on the assumption that the new code (which changes refs to -# build-depends) is correct and the convoluted test and the old "morph -# build" code are wrong, but this needs to be revisited soon. --liw -exit 0 - -set -eu - -. "$SRCDIR/scripts/setup-3rd-party-strata" - -cd "$DATADIR/workspace" -"$SRCDIR/scripts/test-morph" branch test:morphs branch1 - -# System will fail to build unless we add linux to it -- make the change but -# don't commit it, in one of the external strata, as a challenge for -# 'morph build'. -cd "branch1" -cd "test/external-strata" - -awk ' - /^chunks:/ { - print $0 - print "- name: linux" - print " repo: test:kernel-repo" - print " ref: master" - print " build-mode: test" - print " build-depends: []" - next - } - { print } -' stratum2.morph > temp -mv temp stratum2.morph - -# Ignore Morph's output for now because it gives us: -# 2012-11-07 16:26:12 Overlaps in system artifact hello-system-rootfs detected -# -# This is due to having a chunk named 'hello' in more than one stratum. It's -# a bug that this generates overlaps (the chunk's .meta file needs to be called -# $stratum.$chunk.meta rather than $chunk.meta to avoid the overlap) and the -# redirection should be removed once this bug is fixed. -"$SRCDIR/scripts/test-morph" build hello-system > /dev/null - -[ $("$SRCDIR/scripts/list-tree" "$DATADIR/cache/artifacts" | wc -l) -eq 23 ] diff --git a/tests.as-root/build-with-push.script b/tests.as-root/build-with-push.script deleted file mode 100755 index ead669ed..00000000 --- a/tests.as-root/build-with-push.script +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/bash -# Copyright (C) 2012-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 build' when build without push is disabled, i.e. everything is -# built from the remote repositories instead of the local checkouts. - -# FIXME: This seems to break because the new "morph edit" makes correct -# changes to build-dependencies, which breaks the old "morph build". -# Disable test now, re-enable it after "morph build" is fixed. --liw -exit 0 - - -set -eu - -source "$SRCDIR/tests.as-root/setup-build" - -cd "$DATADIR/workspace/branch1" -"$SRCDIR/scripts/test-morph" --push-build-branches build linux-system - -# Test that the chunk was built from test:kernel-repo and not a local branch -cd "$DATADIR/cache/artifacts" -tar xf *.chunk.linux baserock/linux.meta -grep -q "\"repo\": \"file://$DATADIR/kernel-repo\"" baserock/linux.meta - - 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 deleted file mode 100755 index ac6cffec..00000000 --- a/tests.as-root/building-a-system-branch-multiple-times-doesnt-generate-new-artifacts.script +++ /dev/null @@ -1,43 +0,0 @@ -#!/bin/bash -# -# Copyright (C) 2012-2014 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. - -## Make sure "morph build" works anywhere in a workspace or system branch -## and produces the same results every time. - -# FIXME: This seems to break because the new "morph edit" makes correct -# changes to build-dependencies, which breaks the old "morph build". -# Disable test now, re-enable it after "morph build" is fixed. --liw -exit 0 - -set -eu - -source "$SRCDIR/tests.as-root/setup-build" - -# Build once. -cd "$DATADIR/workspace" -"$SRCDIR/scripts/test-morph" build linux-system -ARTIFACT_COUNT="$(ls "$DATADIR/cache/artifacts" | wc -l)" - -# Build twice. -cd "$DATADIR/workspace/branch1" -"$SRCDIR/scripts/test-morph" build linux-system -[ "$ARTIFACT_COUNT" -eq $(ls "$DATADIR/cache/artifacts" | wc -l) ] - -# Build thrice, and that should be enough. -cd "$DATADIR/workspace/branch1/test/morphs" -"$SRCDIR/scripts/test-morph" build linux-system -[ "$ARTIFACT_COUNT" -eq $(ls "$DATADIR/cache/artifacts" | wc -l) ] diff --git a/tests.as-root/building-a-system-branch-picks-up-committed-removes.script b/tests.as-root/building-a-system-branch-picks-up-committed-removes.script deleted file mode 100755 index 64ae82c7..00000000 --- a/tests.as-root/building-a-system-branch-picks-up-committed-removes.script +++ /dev/null @@ -1,62 +0,0 @@ -#!/bin/bash -# Copyright (C) 2013-2014 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. - -# FIXME: This seems to break because the new "morph edit" makes correct -# changes to build-dependencies, which breaks the old "morph build". -# Disable test now, re-enable it after "morph build" is fixed. --liw -exit 0 - -set -e - -. "$SRCDIR/tests.as-root/setup-build" -KERNEL_BRANCH=baserock/builds/123456789/AABBCCDDE - -cd "$DATADIR/workspace/branch1/test/kernel-repo" -git checkout --quiet master -echo Use Morph >README -git add README -git commit --quiet -m 'Add README' - -# Build the linux system from the system branch. -cd "$DATADIR/workspace" -"$SRCDIR/scripts/test-morph" build linux-system - -# Make a change elsewhere to be pulled in -PEER_REPO="$DATADIR/peer-kernel" -git clone --quiet "file://$DATADIR/workspace/branch1/test/kernel-repo" \ - "$PEER_REPO" -cd "$PEER_REPO" -git checkout --quiet -b fix -# remove useless README -git rm --quiet README -git commit --quiet -m 'change stuff' -git checkout --quiet master -git merge --no-ff fix >/dev/null 2>&1 - -# Pull a commit in to the linux morphology. -cd "$DATADIR/workspace/branch1/test/kernel-repo" -git remote add peer "file://$PEER_REPO" -git remote update >/dev/null 2>&1 -git merge --quiet peer/master - -# Build the linux system again without comitting. -cd "$DATADIR/workspace" -"$SRCDIR/scripts/test-morph" build linux-system -cd branch1/test/kernel-repo - -# Check whether the new morphology exists in the temporary build ref -cd "$DATADIR/workspace/branch1/test/kernel-repo" -! git cat-file blob "$KERNEL_BRANCH:README" >/dev/null 2>&1 diff --git a/tests.as-root/building-a-system-branch-works-anywhere.script b/tests.as-root/building-a-system-branch-works-anywhere.script deleted file mode 100755 index cf946cd5..00000000 --- a/tests.as-root/building-a-system-branch-works-anywhere.script +++ /dev/null @@ -1,61 +0,0 @@ -#!/bin/bash -# -# Copyright (C) 2012-2014 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. - - -## Make sure "morph build" works anywhere in a workspace or system branch -## and produces the same results every time. - -# FIXME: This seems to break because the new "morph edit" makes correct -# changes to build-dependencies, which breaks the old "morph build". -# Disable test now, re-enable it after "morph build" is fixed. --liw -exit 0 - -set -eu - -source "$SRCDIR/tests.as-root/setup-build" - -# Build from the workspace root. -cd "$DATADIR/workspace" -"$SRCDIR/scripts/test-morph" build linux-system -"$SRCDIR/scripts/list-tree" "$DATADIR/cache/artifacts" > "$DATADIR/output1" -rm -rf "$DATADIR/cache"/* - -# Build from the branch. -cd "$DATADIR/workspace/branch1" -"$SRCDIR/scripts/test-morph" build linux-system -"$SRCDIR/scripts/list-tree" "$DATADIR/cache/artifacts" > "$DATADIR/output2" -rm -rf "$DATADIR/cache/artifacts"/* - -# Build form the branch root repository. -cd "$DATADIR/workspace/branch1/test/morphs" -"$SRCDIR/scripts/test-morph" build linux-system -"$SRCDIR/scripts/list-tree" "$DATADIR/cache/artifacts" > "$DATADIR/output3" -rm -rf "$DATADIR/cache/artifacts"/* - -# Build from the linux directory. -cd "$DATADIR/workspace/branch1/test/kernel-repo" -"$SRCDIR/scripts/test-morph" build linux-system -"$SRCDIR/scripts/list-tree" "$DATADIR/cache/artifacts" > "$DATADIR/output4" -rm -rf "$DATADIR/cache/artifacts"/* - -# Verify that we build the right number of artifacts -[ $(wc < "$DATADIR/output1" -l) -eq 22 ] - -# List of files in the artifact cache should be identical after each build -diff "$DATADIR/output1" "$DATADIR/output2" -diff "$DATADIR/output2" "$DATADIR/output3" -diff "$DATADIR/output3" "$DATADIR/output4" diff --git a/tests.deploy/deploy-cluster.script b/tests.deploy/deploy-cluster.script deleted file mode 100755 index acc65a54..00000000 --- a/tests.deploy/deploy-cluster.script +++ /dev/null @@ -1,60 +0,0 @@ -#!/bin/bash -# -# Copyright (C) 2013-2014 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 - -GIT_DIR=test/morphs/.git git tag -a my-test-tag -m "Example tag" HEAD - -"$SRCDIR/scripts/test-morph" --log "$DATADIR/deploy.log" \ - deploy test_cluster \ - linux-system-2.EXAMPLE_PASSWORD="secret" \ - linux-system-2.HOSTNAME="baserock-rocks-even-more" \ - > /dev/null - -outputdir=test/morphs -test -e $outputdir/hello-system.img -test -e $outputdir/linux-system-1.tar -test -e $outputdir/linux-system-2.tar - -hostname1=$(tar -xf $outputdir/linux-system-1.tar ./etc/hostname -O) -hostname2=$(tar -xf $outputdir/linux-system-2.tar ./etc/hostname -O) - -[ "$hostname1" = baserock-rocks ] -[ "$hostname2" = baserock-rocks-even-more ] - -tar -xf $outputdir/linux-system-2.tar ./baserock/deployment.meta -metadata=baserock/deployment.meta - -# Check that 'git describe' of definitions repo was stored correctly -echo -n "definitions-version: " -"$SRCDIR/scripts/yaml-extract" $metadata definitions-version - -echo -n "configuration.HOSTNAME: " -"$SRCDIR/scripts/yaml-extract" $metadata configuration HOSTNAME - -! (grep -q "EXAMPLE_PASSWORD" $metadata) diff --git a/tests.deploy/deploy-cluster.stdout b/tests.deploy/deploy-cluster.stdout deleted file mode 100644 index 16b78015..00000000 --- a/tests.deploy/deploy-cluster.stdout +++ /dev/null @@ -1,2 +0,0 @@ -definitions-version: {'describe': 'my-test-tag-unreproducible'} -configuration.HOSTNAME: 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 deleted file mode 100755 index 035557dd..00000000 --- a/tests.deploy/deploy-rawdisk-without-disk-size-fails.script +++ /dev/null @@ -1,30 +0,0 @@ -#!/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" refuses to deploy if DISK_SIZE is unset. - -set -eu - - -. "$SRCDIR/tests.deploy/setup-build" -cd "$DATADIR/workspace/branch1" -"$SRCDIR/scripts/test-morph" build linux-system -! "$SRCDIR/scripts/test-morph" --log "$DATADIR/deploy.log" \ - 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 deleted file mode 100755 index 3489a198..00000000 --- a/tests.deploy/deploy-rawdisk.script +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/bash -# -# Copyright (C) 2013-2014 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 to a raw disk image. - - -set -eu - - -. "$SRCDIR/tests.deploy/setup-build" -cd "$DATADIR/workspace/branch1" -"$SRCDIR/scripts/test-morph" build linux-system -"$SRCDIR/scripts/test-morph" --log "$DATADIR/deploy.log" \ - deploy rawdisk_test_cluster > /dev/null - -outputdir="test/morphs" -test -e $outputdir/disk.img - diff --git a/tests.deploy/setup b/tests.deploy/setup deleted file mode 100755 index 033598bc..00000000 --- a/tests.deploy/setup +++ /dev/null @@ -1,216 +0,0 @@ -#!/bin/bash -# -# Create git repositories for tests. The chunk repository will contain a -# simple "hello, world" C program, and two branches ("master", "farrokh"), -# with the master branch containing just a README. The two branches are there -# so that we can test building a branch that hasn't been checked out. -# The branches are different so that we know that if the wrong branch -# is uses, the build will fail. -# -# The stratum repository contains a single branch, "master", with a -# stratum and a system morphology that include the chunk above. -# -# Copyright (C) 2011, 2012, 2013, 2014 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. - - -set -eu - -source "$SRCDIR/scripts/fix-committer-info" - -# The $DATADIR should be empty at the beginnig of each test. -find "$DATADIR" -mindepth 1 -delete - -# Create an empty directory to be used as a morph workspace -mkdir "$DATADIR/workspace" - -# Create chunk repository. - -chunkrepo="$DATADIR/chunk-repo" -mkdir "$chunkrepo" -cd "$chunkrepo" -git init --quiet - -cat <<EOF > README -This is a sample README. -EOF -git add README -git commit --quiet -m "add README" - -git checkout --quiet -b farrokh - -cat <<EOF > hello.c -#include <stdio.h> -int main(void) -{ - puts("hello, world"); - return 0; -} -EOF -git add hello.c - -cat <<EOF > hello.morph -name: hello -kind: chunk -build-system: dummy -build-commands: - - gcc -o hello hello.c -install-commands: - - install -d "\$DESTDIR/etc" - - install -d "\$DESTDIR/bin" - - install hello "\$DESTDIR/bin/hello" -EOF -git add hello.morph - -git commit --quiet -m "add a hello world program and morph" - -git checkout --quiet master - - - -# Create morph repository. - -morphsrepo="$DATADIR/morphs" -mkdir "$morphsrepo" -cd "$morphsrepo" -git init --quiet - -cat <<EOF > hello-stratum.morph -name: hello-stratum -kind: stratum -chunks: - - name: hello - repo: test:chunk-repo - ref: farrokh - build-depends: [] - build-mode: test -EOF -git add hello-stratum.morph - -cat <<EOF > hello-system.morph -name: hello-system -kind: system -arch: $("$SRCDIR/scripts/test-morph" print-architecture) -strata: - - morph: hello-stratum -EOF -git add hello-system.morph - -cat <<EOF > linux-stratum.morph -name: linux-stratum -kind: stratum -build-depends: - - morph: hello-stratum -chunks: - - name: linux - repo: test:kernel-repo - ref: master - build-depends: [] - build-mode: test -EOF -git add linux-stratum.morph - -cat <<EOF > linux-system.morph -name: linux-system -kind: system -arch: $("$SRCDIR/scripts/test-morph" print-architecture) -strata: - - morph: hello-stratum - - morph: linux-stratum -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. -mkdir "$DATADIR/kernel-repo" -cat <<EOF > "$DATADIR/kernel-repo/linux.morph" -name: linux -kind: chunk -install-commands: - - mkdir -p "\$DESTDIR/boot" - - touch "\$DESTDIR/extlinux.conf" - - touch "\$DESTDIR/boot/vmlinuz" - - touch "\$DESTDIR/boot/System.map" -EOF -"$SRCDIR/scripts/run-git-in" "$DATADIR/kernel-repo" init --quiet -"$SRCDIR/scripts/run-git-in" "$DATADIR/kernel-repo" add . -"$SRCDIR/scripts/run-git-in" "$DATADIR/kernel-repo" commit --quiet -m foo \ - > /dev/null - -# Create a morph configuration file. -cat <<EOF > "$DATADIR/morph.conf" -[config] -repo-alias = test=file://$DATADIR/#file://$DATADIR/ -cachedir = $DATADIR/cache -log = $DATADIR/morph.log -no-distcc = true -quiet = true -log = /tmp/morph.log -EOF diff --git a/tests.deploy/setup-build b/tests.deploy/setup-build deleted file mode 100644 index c6b24da5..00000000 --- a/tests.deploy/setup-build +++ /dev/null @@ -1,35 +0,0 @@ -#!/bin/bash -# -# Copyright (C) 2012-2014 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 - -# 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 - diff --git a/tests/setup b/tests/setup index 02ddb3af..6ebab880 100755 --- a/tests/setup +++ b/tests/setup @@ -31,80 +31,6 @@ set -eu # The $DATADIR should be empty at the beginnig of each test. find "$DATADIR" -mindepth 1 -delete -# Create chunk repository. - -chunkrepo="$DATADIR/chunk-repo" -mkdir "$chunkrepo" -cd "$chunkrepo" -git init --quiet - -cat <<EOF > README -This is a sample README. -EOF -git add README -git commit --quiet -m "add README" - -git checkout --quiet -b farrokh - -cat <<EOF > hello.c -#include <stdio.h> -int main(void) -{ - puts("hello, world"); - return 0; -} -EOF -git add hello.c - -cat <<EOF > hello.morph -name: hello -kind: chunk -build-system: dummy -build-commands: - - gcc -o hello hello.c -install-commands: - - install -d "\$DESTDIR/etc" - - install -d "\$DESTDIR/bin" - - install hello "\$DESTDIR/bin/hello" -EOF -git add hello.morph - -git commit --quiet -m "add a hello world program and morph" - -git checkout --quiet master - - - -# Create morph repository. - -morphsrepo="$DATADIR/morphs-repo" -mkdir "$morphsrepo" -cd "$morphsrepo" -git init --quiet - -cat <<EOF > hello-stratum.morph -name: hello-stratum -kind: stratum -chunks: - - name: hello - repo: test:chunk-repo - ref: farrokh - build-mode: test - build-depends: [] -EOF -git add hello-stratum.morph - -cat <<EOF > hello-system.morph -name: hello-system -kind: system -strata: - - morph: hello-stratum -EOF -git add hello-system.morph - -git commit --quiet -m "add morphs" - - # Create a morph configuration file. cat <<EOF > "$DATADIR/morph.conf" [config] |