diff options
author | Adam Coldrick <adam.coldrick@codethink.co.uk> | 2014-07-03 13:50:02 +0000 |
---|---|---|
committer | Adam Coldrick <adam.coldrick@codethink.co.uk> | 2014-07-04 08:35:25 +0000 |
commit | bd03f8d3247add14922f81576a9a9f53ab840b01 (patch) | |
tree | c9f1e652463b0cc436260df43c32168561642e2b /yarns/building.yarn | |
parent | 30b23f51e4d85f265dbff8d0bb0ed7fce9f68606 (diff) | |
download | morph-bd03f8d3247add14922f81576a9a9f53ab840b01.tar.gz |
yarns: Test building and deployment of a system with a chunk in definitionsbaserock/adamcoldrick/load-chunks-from-definitions
Diffstat (limited to 'yarns/building.yarn')
-rw-r--r-- | yarns/building.yarn | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/yarns/building.yarn b/yarns/building.yarn index 6b90ce64..feb955fb 100644 --- a/yarns/building.yarn +++ b/yarns/building.yarn @@ -7,3 +7,44 @@ Morph Building Tests WHEN the user checks out the system branch called master AND the user creates an uncommitted system morphology called systems/base-system.morph for our architecture in system branch master THEN morph build the system systems/base-system.morph of the branch master + +Chunk morphologies in definitions +--------------------------------- + +Chunk morphologies can either be in the source code repository for the +chunk or in the definitions repository. All the other tests which build +things are currently testing that chunk morphologies in the source +repository works, but here we test that building with a chunk morphology +in the definitions repository works correctly. + + SCENARIO building a system with a chunk whose morphology is in the definitions repo + GIVEN a workspace + AND a git server + +A chunk morphology is added to the definitions repository, and the +stratum is changed so that the chunk spec points to this morphology. + + WHEN the user checks out the system branch called master + GIVEN a chunk morphology called test-chunk.morph in system branch master with install-command install -D -m 644 /dev/null "$DESTDIR/$PREFIX/chunks-in-definitions" + AND the chunk spec test-chunk in the stratum strata/test-stratum.morph in branch master has morph set to test-chunk.morph + +The system needs to be built to ensure that we can successfully build +using a chunk morphology that is in the definitions repository. + + WHEN the user builds the system systems/test-system.morph in branch master + +The system needs to be deployed as a tarball in order to ensure the +chunk morphology from the definitions repository was used. + + GIVEN a cluster called test-cluster.morph in system branch master + AND a system in cluster test-cluster.morph in branch master called test-system + AND system test-system in cluster test-cluster.morph in branch master builds systems/test-system.morph + AND system test-system in cluster test-cluster.morph in branch master has deployment type: tar + AND system test-system in cluster test-cluster.morph in branch master has deployment location: test.tar + WHEN the user attempts to deploy the cluster test-cluster.morph in branch master + THEN morph succeeded + +If the correct chunk morphology was used, then the tarball should +contain the file "/usr/chunks-in-definitions". + + THEN tarball workspace/master/test/morphs/test.tar contains usr/chunks-in-definitions |