summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Maw <richard.maw@gmail.com>2014-09-24 21:30:55 +0000
committerRichard Maw <richard.maw@gmail.com>2014-10-01 09:32:55 +0000
commit01ae89708994a7b3baa59683d2e264b5c6e3bd42 (patch)
tree13dc4ca8fc1ff391702184151d1e846011e7f530
parentbb43c48bd3ee9e18ce07d1a9b0649afe1676a3c1 (diff)
downloadmorph-01ae89708994a7b3baa59683d2e264b5c6e3bd42.tar.gz
Remove remaining test.as-root cmdtests
The repo-alias is indirectly tested by branch-from-image, and checking the --version is part of the release process, so we're not going to miss these tests.
-rwxr-xr-xcheck16
-rw-r--r--tests.as-root/lib36
-rwxr-xr-xtests.as-root/metadata-includes-morph-version.script53
-rwxr-xr-xtests.as-root/metadata-includes-morph-version.setup36
-rwxr-xr-xtests.as-root/metadata-includes-repo-alias.script49
-rwxr-xr-xtests.as-root/metadata-includes-repo-alias.setup36
-rwxr-xr-xtests.as-root/setup194
-rw-r--r--tests.as-root/setup-build35
8 files changed, 0 insertions, 455 deletions
diff --git a/check b/check
index a942ca90..dc4f96bc 100755
--- a/check
+++ b/check
@@ -162,19 +162,3 @@ elif ! (python --version 2>&1 | grep -q '^Python 2\.[78]'); then
else
cmdtest tests.build
fi
-
-# The as-root tests use YAML morphologies, so they require the PyYAML module.
-if ! "$run_slow_cmdtests"; then
- echo "NOT RUNNING tests.as-root"
-elif [ $(whoami) != root ] || ! command -v mkfs.btrfs > /dev/null; then
- echo "NOT RUNNING tests.as-root (no btrfs)"
-elif ! python -c "
-import morphlib, sys
-if not morphlib.got_yaml:
- sys.exit(1)
-" > /dev/null 2>&1
-then
- echo "NOT RUNNING tests.as-root (requires PyYAML)"
-else
- cmdtest tests.as-root
-fi
diff --git a/tests.as-root/lib b/tests.as-root/lib
deleted file mode 100644
index d17d8e32..00000000
--- a/tests.as-root/lib
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/bin/sh
-#
-# 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.
-
-
-## Helper functions for as-root tests
-
-loopback_rootfs() {
- # Find offset partition offset in a rootfs and mount it
- ROOTFS="$1"
-
- PYTHONPATH="$SRCDIR" "$SRCDIR/scripts/sparse-gunzip" \
- <"$ROOTFS" >"$ROOTFS-unzipped"
-
- OFFSET=$(sfdisk -d "$ROOTFS-unzipped" | \
- grep -m 1 -o 'start=\s\+\([0-9]\+\)' | awk '{ print $2 }')
- OFFSET=$(expr "$OFFSET" '*' 512)
-
- DEVICE=$(losetup --show -o "$OFFSET" -f "$ROOTFS-unzipped")
- udevadm settle
-
- echo "$DEVICE"
-}
diff --git a/tests.as-root/metadata-includes-morph-version.script b/tests.as-root/metadata-includes-morph-version.script
deleted file mode 100755
index 772d7d50..00000000
--- a/tests.as-root/metadata-includes-morph-version.script
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/bin/sh
-#
-# 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.
-
-
-# All the metadata files in /baserock of a system contain morph's version
-# information
-
-set -eu
-
-# Disable test on versions of Python before 2.7.
-. "$SRCDIR/scripts/python-check"
-
-. "$SRCDIR/scripts/fix-committer-info"
-
-# get git version info
-cd "$SRCDIR"
-description="$(git describe --abbrev=40 --always \
- --dirty=-unreproducible --match=DO-NOT-MATCH-ANY-TAGS)"
-commit="$(git rev-parse 'HEAD^{commit}')"
-tree="$(git rev-parse 'HEAD^{tree}')"
-ref="$(git rev-parse --symbolic-full-name 'HEAD')"
-
-tar=$("$SRCDIR/scripts/test-morph" --find-system-artifact \
- build-morphology test:morphs tarball hello-tarball)
-
-extracted="$DATADIR/extracted"
-mkdir -p "$extracted"
-tar -xf "$tar" -C "$extracted"
-cd "$extracted/baserock"
-for f in *.meta; do
- # Check for git describe output
- grep -q -F -e "$description" "$f"
- # Check the Sha-1 commit is included
- grep -q -F -e "$commit" "$f"
- # Check the Sha-1 of the commit's tree is included
- grep -q -F -e "$tree" "$f"
- # Check the ref (e.g. branch) is included
- grep -q -F -e "$ref" "$f"
-done
diff --git a/tests.as-root/metadata-includes-morph-version.setup b/tests.as-root/metadata-includes-morph-version.setup
deleted file mode 100755
index e4557302..00000000
--- a/tests.as-root/metadata-includes-morph-version.setup
+++ /dev/null
@@ -1,36 +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.
-
-
-set -eu
-
-source "$SRCDIR/scripts/fix-committer-info"
-
-morphsrepo="$DATADIR/morphs"
-cd "$morphsrepo"
-git checkout -b tarball
-cat <<EOF > hello-tarball.morph
-name: hello-tarball
-kind: system
-arch: $("$SRCDIR/scripts/test-morph" print-architecture)
-strata:
- - morph: hello-stratum
- - morph: linux-stratum
-EOF
-git add hello-tarball.morph
-
-git commit --quiet -m "add tarball system"
diff --git a/tests.as-root/metadata-includes-repo-alias.script b/tests.as-root/metadata-includes-repo-alias.script
deleted file mode 100755
index 9e4a5d98..00000000
--- a/tests.as-root/metadata-includes-repo-alias.script
+++ /dev/null
@@ -1,49 +0,0 @@
-#!/bin/sh
-#
-# 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.
-
-
-# All the metadata files in /baserock of a system contain the repository
-# alias they were built from.
-
-set -eu
-
-# Disable test on versions of Python before 2.7.
-. "$SRCDIR/scripts/python-check"
-
-. "$SRCDIR/scripts/fix-committer-info"
-
-# get git version info
-cd "$SRCDIR"
-
-tar=$("$SRCDIR/scripts/test-morph" --find-system-artifact \
- build-morphology test:morphs tarball hello-tarball)
-
-extracted="$DATADIR/extracted"
-mkdir -p "$extracted"
-tar -xf "$tar" -C "$extracted"
-cd "$extracted/baserock"
-
-# Check for test:morphs in System and Stratum
-#grep -q -F -e test:morphs hello-tarball.meta # tarball bug
-grep -q -F -e test:morphs hello-stratum-runtime.meta
-grep -q -F -e test:morphs linux-stratum-runtime.meta
-
-# Check for test:kernel-repo in linux
-grep -q -F -e test:kernel-repo linux-misc.meta
-
-# Check for test:chunk-repo in hello
-grep -q -F -e test:chunk-repo hello-bins.meta
diff --git a/tests.as-root/metadata-includes-repo-alias.setup b/tests.as-root/metadata-includes-repo-alias.setup
deleted file mode 100755
index e4557302..00000000
--- a/tests.as-root/metadata-includes-repo-alias.setup
+++ /dev/null
@@ -1,36 +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.
-
-
-set -eu
-
-source "$SRCDIR/scripts/fix-committer-info"
-
-morphsrepo="$DATADIR/morphs"
-cd "$morphsrepo"
-git checkout -b tarball
-cat <<EOF > hello-tarball.morph
-name: hello-tarball
-kind: system
-arch: $("$SRCDIR/scripts/test-morph" print-architecture)
-strata:
- - morph: hello-stratum
- - morph: linux-stratum
-EOF
-git add hello-tarball.morph
-
-git commit --quiet -m "add tarball system"
diff --git a/tests.as-root/setup b/tests.as-root/setup
deleted file mode 100755
index 1cf9dd04..00000000
--- a/tests.as-root/setup
+++ /dev/null
@@ -1,194 +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 tools repository, so there is an extra layer of build-depends
-toolsrepo="$DATADIR/tools-repo"
-mkdir -p "$toolsrepo"
-cd "$toolsrepo"
-git init --quiet
-cat <<'EOF' >tools.morph
-name: tools
-kind: chunk
-build-commands:
- - echo 'echo dummy strace' >strace
-install-commands:
- - mkdir -p "$DESTDIR/bin"
- - install strace "$DESTDIR/bin/strace"
-EOF
-git add tools.morph
-git commit --quiet -m "add morphology"
-
-# 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-mode: test
- build-depends: []
-EOF
-git add hello-stratum.morph
-
-cat <<EOF > tools-stratum.morph
-name: tools-stratum
-kind: stratum
-build-depends:
- - morph: linux-stratum
-chunks:
- - name: tools
- repo: test:tools-repo
- ref: master
- build-mode: test
- build-depends: []
-EOF
-git add tools-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-mode: test
- build-depends: []
-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
- - morph: tools-stratum
-EOF
-git add linux-system.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.as-root/setup-build b/tests.as-root/setup-build
deleted file mode 100644
index 1f6f1c39..00000000
--- a/tests.as-root/setup-build
+++ /dev/null
@@ -1,35 +0,0 @@
-#!/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
-