summaryrefslogtreecommitdiff
path: root/yarns
Commit message (Collapse)AuthorAgeFilesLines
* Raise the disk image size for deployment testRichard Maw2014-03-141-1/+1
| | | | Older versions of btrfs fail with just 10M.
* Revert "tests: Allow running ./check on 32-bit x86"Richard Maw2014-03-141-1/+1
| | | | | | | | | This reverts commit f366960273b026322f7e7cc3c1eb0cd632ebc73e. These changes break building on x86_64, which is our main development platform. Better patches will be forthcoming later.
* tests: Allow running ./check on 32-bit x86Richard Maw2014-03-141-1/+1
| | | | | | | | uname will return the same string morph expects as an architecture on x86_64, but the canonical x86_32 architecture names match i?86 instead. To make it work on 32-bit, we replace calls to uname with morph print-architecture, which does the translation for us.
* Test nested deploymentsRichard Maw2014-03-144-30/+125
|
* yarns: set deployment name based on system nameRichard Maw2014-03-144-7/+8
|
* Convert colons to slashes for chunk nameLars Wirzenius2014-03-062-3/+14
|
* Fix directory names for chunks to use slashes, not colonsLars Wirzenius2014-03-061-5/+5
| | | | | These are _directory_ names, not chunk repo URLs, so a slash is correct now.
* Fix pathname (colon to slash) in test implementationsLars Wirzenius2014-03-061-21/+21
|
* Pass in user's PYTHONPATH to morph when run from yarnsLars Wirzenius2014-03-061-1/+10
| | | | | | | | | | | | | We carefully _add_ to PYTHONPATH in ./check, if it was set by the user. However, yarn cleans the environment when it runs tests, so we tell it to add PYTHONPATH from ./check to the test environment. Additionally, we change yarns/morph.shell-lib so it doesn't override PYTHONPATH, but adds to it. All of this is necessary to get morph, when run by yarn steps, to have the right PYTHONPATH, which can be (and currently is) to allow the user to specify un-installed versions of dependencies, such as cliapp.
* Remove setting of SRCDIR in morph.shell-libLars Wirzenius2014-03-051-9/+0
| | | | | Yarn in Baserock now sets SRCDIR, so it is not necessary for us to set it anymore.
* yarns: Fix how Morph is runSam Thursfield2014-03-041-6/+2
| | | | | | | | As we are running Morph from the source dir we need to set PYTHONPATH so that extensions are correctly loaded. Also, the version of Yarn in Baserock sets 'SRCDIR' so we do not need to set a default any more.
* deploy: Add upgrading to deployment.yarnSam Thursfield2014-03-042-1/+39
|
* Merge remote-tracking branch ↵Richard Maw2014-02-172-5/+33
|\ | | | | | | | | | | | | | | 'origin/baserock/richardmaw/10312/ensure-not-add-repo-ref' This includes a typo fix of Unpertify -> Unpetrify Reviewed-by: Lars Wirzenius
| * yarns: Ensure machine altered morphologies don't include repo/refRichard Maw2014-02-142-0/+29
| |
| * yarns: Remove code to check refs to strataRichard Maw2014-02-141-5/+4
|/ | | | | | | | It should no longer be possible to set these fields. Either we create the morphologies with them in a GIVEN, at which point we already know it's there, so checking whether it is there is pointless; or we check that morph doesn't create them, but the current implementation would not allow it, since yarn doesn't have THEN NOT.
* Warn and default to null if repo or ref are givenRichard Maw2014-02-131-12/+3
| | | | | | | | | | | | | | | | | | This now means that the system morphology is not altered when chunks are altered, so some tests had to change. Since this uses the python warnings API, these warnings can be ignored by running python -W ignore:"stratum morphology" \ -W ignore:"system morphology" \ "$(which morph)" ...` or turned into errors with python -W error:"stratum morphology" \ -W error:"system morphology" \ "$(which morph)" ...`
* Remove tests for working with null refsRichard Maw2014-02-133-80/+1
| | | | | Refs should be completely omitted, and this is now the standard behaviour, so there's little value in testing the behaviour separately.
* Don't use repo or ref in test suiteRichard Maw2014-02-133-14/+0
|
* yarns: Add regression test for cache-key clashRichard Maw2014-01-222-0/+34
|
* yarns: Move system artifact inclusion implementationRichard Maw2014-01-222-15/+14
| | | | | | This moves the GIVEN system $system uses $artifacts from $source to the generic implements section, and the Python implementation into the edit-morph helper script.
* yarns: install misc files in /etc, not /usr/etcRichard Maw2014-01-221-1/+1
|
* yarns: Add test for not building unnecessary chunksRichard Maw2014-01-221-0/+55
| | | | | | | | | | | | | | | | It's an unintended, but possibly not unwelcome feature, that if you have a system that includes stratum artifacts that don't require building the whole stratum, that those chunks are not built. It's debatable whether the confusion of being able to have chunks defined that aren't built outweighs reduced build-times, indeed the test works by having a chunk that can never successfully build, which shows that one pitfall is the possibility of not noticing some chunks fail to build. However, whether it's a good thing or not, we should document this behaviour with a test, so that we don't accidentally break behaviour that someone depends on.
* yarns: Add commentary for splitting scenariosRichard Maw2014-01-221-0/+36
|
* yarns: Add tests for building systems with splittingRichard Maw2014-01-162-0/+138
| | | | | | | This includes tests for systems with the default splits and a system that selects only one of the produced stratum artifacts to go into the system artifact, since this is roughly the expected use-case for the tiny system morphologies.
* yarns: Add a deploy testRichard Maw2014-01-152-3/+49
|
* yarns: Make test chunk create representative filesRichard Maw2014-01-151-2/+134
| | | | | | | It's useful for the splitting tests that will be implemented later, for there to be files that are representative of the files that would be on a common root filesystem, so the match rules can be tested by the right chunk artifacts containing the right files.
* yarns: Remove redundant repo in IMPLEMENTS THENRichard Maw2014-01-093-4/+4
| | | | | morph build the system... doesn't need the repository to be specified, just the branch; morph is able to work it out for itself.
* Add yarn test for cross-bootstrapPedro Alvarez2013-12-202-3/+69
|
* yarns: Change expected result of building uncommitted morphologiesRichard Maw2013-11-291-3/+1
| | | | | The new build code uses `git update-index --add`, which means it can use morphologies that haven't previously been added.
* yarns: un-parameterise architecture in system morphologiesRichard Maw2013-11-293-10/+18
| | | | | | It doesn't make sense to be able to specify an architecture from the IMPLEMENTS name, since you either need your architecture for something to build, or testarch for something that consistently doesn't build.
* validation: Require there be non-bootstrap chunks in systemsRichard Maw2013-11-292-2/+46
| | | | | | | | | | | | | | Bootstrap chunks don't make it into the final system, so there needs to be an extra check for empty systems after the sources have been collected. This was complicated slightly by the fact that if you try to build a chunk directly you will have no strata in your sources, hence no non-bootstrap chunks, but validation for having been told to build a chunk is best handled later. This amends the old yarns that depended on building a bootstrap chunk and adds a new one that explicitly builds a system with bootstrap chunks.
* morphloader: Require systems have at least one stratumRichard Maw2013-11-292-14/+15
| | | | | | | | | | It doesn't currently make sense to build a system which contains no strata. We may later add other fields, such as initramfs to contribute to the system's artifact, but until then it's another bug to trip over. This uses collections.Sequence for checking the type of the systems entry in the morphology as a style choice, though it allows more flexibility if the types in the parsed morphology change.
* yarns: Correctly allow run_morph to output stderr on failureRichard Maw2013-11-291-7/+10
| | | | | Set -e meant that the stderr could never be re-output, catching the return code and re-outputting was not sufficient.
* yarns: Also output error messages to terminalRichard Maw2013-11-221-0/+3
| | | | | Saving the result is useful for the tests, but diagnostics of failures are quicker if the result is printed to the terminal as well.
* Standardizes language and refactors some implementation stepsDaniel Firth2013-11-056-136/+124
|
* Added scenario test to prevent morph edit from being used without a system ↵Daniel Firth2013-11-012-1/+15
| | | | argument
* Added scenario test for preventing building uncommitted systemsDaniel Firth2013-11-012-0/+21
|
* Add regression test, morph branch doesn't remove existing branch dirPedro Alvarez2013-10-311-0/+20
|
* Some tests refactorized for better understanding.Pedro Alvarez2013-10-312-12/+16
|
* Modify morph test suite to use the new cmdtestPedro Alvarez2013-10-302-0/+20
|
* Deploying a non-cluster morphology now displays an error messageDaniel Firth2013-10-302-1/+18
|
* Added scenario test for preventing cross-buildingDaniel Firth2013-10-303-1/+39
|
* Adding testPedro Alvarez2013-10-282-1/+36
|
* Add fstab.configureLars Wirzenius2013-10-242-0/+139
| | | | | This will allow the user to append text to /etc/fstab during a deployment, without having to write custom configuration extensions.
* Remove TAB charactersLars Wirzenius2013-10-101-2/+2
|
* Merge remote-tracking branch 'origin/baserock/richardipsum'Lars Wirzenius2013-10-082-0/+45
|\ | | | | | | | | Reviewed-by: Lars Wirzenius Reviewed-by: Richard Maw
| * Add yarn test for autotools version guesserRichard Ipsum2013-10-082-0/+43
|/
* Move helper script to scripts for use in cmdtestsRichard Maw2013-09-261-17/+1
|
* Make branch commands work with null refsRichard Maw2013-09-263-0/+95
|
* Rename test to fix name clashRichard Maw2013-09-231-1/+1
|