summaryrefslogtreecommitdiff
path: root/yarns
Commit message (Collapse)AuthorAgeFilesLines
* Use the modern way of the GPL copyright header: URL instead real addressJavier Jardón2015-03-161-3/+2
| | | | Change-Id: I992dc0c1d40f563ade56a833162d409b02be90a0
* yarns: Remove test for `morph foreach`Sam Thursfield2015-03-112-25/+2
| | | | | | | | | | This test fails with latest Busybox. Since we plan on removing workspaces anyway, I don't see a reason to fix it. The `morph foreach` command does actually still work as expected. Morph's ./check test suite now passes again in a 'build' reference system built from commit 88eface4c72dab689bc409c77e209833a0acd038 or newer.
* Convert the empty-stratum test into a yarnAdam Coldrick2015-02-182-0/+37
| | | | | | | We will use MorphologyLoader.load_from_file() to load morphologies from a temporary file, so the output will be unpredictable. That will break this test, so we may as well convert it into a yarn to fix it.
* Fix some yarns to shut down their git servers when finishedAdam Coldrick2015-02-183-0/+3
| | | | | | This commit fixes an issue where running morph's yarn tests would leave behind a number of scripts/git-daemon-wrap processes due to some tests not stopping their git server properly.
* Fix an existing build yarnRichard Ipsum2015-01-231-1/+2
| | | | | | | Fix "attempting to build a system morphology which has never been committed" use WHEN ... THEN morph succeeded The old yarn worked just as well, this change is just for consistency.
* Make some existing deployment scenarios simplerRichard Ipsum2015-01-231-14/+4
| | | | | Simplify 'deploying a cluster morphology as a tarfile' and 'attempting to upgrade a tarfile deployment'
* Quote variables and use = instead of ==Richard Ipsum2015-01-231-3/+3
|
* Add yarns to test deploying with relative pathsRichard Ipsum2015-01-232-6/+58
|
* Add yarns to test building with relative pathsRichard Ipsum2015-01-232-0/+35
|
* Update tests to work with modified build commandsRichard Ipsum2015-01-231-6/+6
| | | | | | | Existing tests generally request something like morph build systems/foo-system.morph, now that the system arg is treated relative to the working directory we must change into the directory that contains the morphs to run morph build systems/foo-system.morph
* yarns: Report stderr on morph failureRichard Maw2014-11-122-3/+8
|
* yarns: Add yarns for system-integrationsRichard Maw2014-10-242-0/+38
| | | | | These were previously completely untested, so their unsafe mounting wasn't noticed, but now both are fixed.
* yarns: Fix missing FINALLYRichard Maw2014-10-241-0/+1
|
* Allow distbuilds to choose where to put logsRichard Maw2014-10-081-0/+2
|
* Only attempt to run distbuild yarns if possibleRichard Maw2014-10-082-0/+4
| | | | | | | | | You need both bottle and flup for this to work, and it would wait forever for a cache-server that is never going to start unless you have bottle and flup. So we now check whether the cache server is functional before attempting distbuild tests.
* Test that morph can handle binary garbage output in buildsRichard Maw2014-10-081-1/+11
|
* Add distbuilding yarnRichard Maw2014-10-023-7/+192
| | | | Deploying after distbuild currently broken
* Move architecture existing test to yarnRichard Maw2014-10-012-0/+31
|
* Move the branch-from-image test to a yarnRichard Maw2014-10-012-0/+49
|
* Modify yarns to use test-shell instead of build-mode: testRichard Maw2014-10-014-167/+178
| | | | | When all the tests that use build-mode: test are gone, the build mode can be removed.
* Add `morph upgrade` command, deprecate `morph deploy --upgrade`Sam Thursfield2014-09-012-2/+2
| | | | | | The arguments to `morph deploy` can get quite long, any way we can make it shorter and clearer is useful. We can also avoid having the strange --no-upgrade flag in future.
* yarns: Use a more realistic simulation of a git serverbaserock/richardmaw/yarn-git-daemonRichard Maw2014-08-287-11/+62
| | | | | | | | | | | Previously we would use file: URIs to point to the git repositories. This was fast and simple, but had the drawback that it bypassed all the git cache logic, so changes to the git cache weren't adequately covered by the test suite. Now we spool up a simulated git server per scenario, and shut it down at the end.
* Add yarn for building uncommitted changesRichard Maw2014-08-281-1/+33
| | | | This replaces an old cmdtest.
* yarns: Use run_morph for pushing branchesRichard Maw2014-08-281-1/+2
| | | | We're using the wrong morph if we don't use run_morph
* Fix `morph edit` when repo has the same ref as system branchRichard Maw2014-08-121-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | There was a check in it to see whether it needed to do the git branch and git checkout based on whether the name of the branch matched that in the morphology. This had a couple of problems: 1. Now that we aren't always building from HEAD, we need to be able to roll its commit back, so using the existing branch isn't always the best idea. 2. It only checks the "ref" field, not "unpetrify-ref", so even though we clone the right ref in there, it's checking the commit id against the system branch name, so would always try to re-create the branch, and fail when it already exists. So now, we remove the original ref and re-create it with our preferred HEAD. A better solution might be to change the clone logic to not automatically checkout HEAD, and instead require an explicit branch then checkout, but the initial clone logic is shared with build, and I didn't feel like tracking down all the different places that it was used.
* Make morph show-branch-root print the pathRichard Maw2014-08-122-6/+6
| | | | | | | | | The help for the show-branch-root command said it returns a path, but the command and the yarns just showed the aliased url it was cloned from. Given I found myself needing the path in some scripts, not the repo url, I think it's more useful to reconcile the difference this way.
* yarns: Start from petrified refsRichard Maw2014-08-124-30/+36
| | | | | | | | | This is closer to our current workflow, where we are always petrified and update the ref field when we need to update a component. This required rearranging the operations to create the chunk repository before the definitions repository, and remove a check that assumes we weren't already petrified.
* Remove petrify and unpetrify commandsRichard Maw2014-08-122-83/+0
| | | | | | | We don't use this any more, and instead prefer to always keep definitions.git petrified, and update the refs ourselves. branch-from-image still uses some of the remaining petrify code.
* Merge remote-tracking branch ↵Richard Maw2014-08-123-7/+246
|\ | | | | | | | | | | 'origin/baserock/richardmaw/S11416/no-unnecessary-temp-branches' Reviewed-by: Daniel Silverstone
| * Add yarns for checking the state of temporary build branchesbaserock/richardmaw/S11416/no-unnecessary-temp-branchesRichard Maw2014-08-122-0/+239
| |
| * Yarns: Preserve the output of morph foo in out-fooRichard Maw2014-08-121-2/+3
| |
| * Yarns: implement pushing a whole system branchRichard Maw2014-08-121-2/+1
| |
| * Yarns: misc fixesRichard Maw2014-08-122-3/+3
|/
* yarns: Make test-chunk use files from its source repoRichard Maw2014-07-221-3/+16
| | | | | | It is entirely possible that we could accidentally give chunks that use morphologies from the definitions repository, the definitions repository to build from, rather than the source repository.
* yarns: Test building and deployment of a system with a chunk in definitionsAdam Coldrick2014-07-223-23/+26
|
* Remove use of "morph" field in chunk specs in yarnsRichard Maw2014-07-223-7/+6
| | | | | | We don't use this in definitions.git, and we're going to change its semantics, so the test suite would break until we introduced the new semantics, unless we remove its use of the old semantics first.
* Use run_morph in yarnsRichard Maw2014-07-221-1/+1
| | | | | | This is required to ensure the right version of morph is used. I have a .bashrc that causes `morph` to be "$HOME/morph/morph", so it fails to find morph, because HOME is set to a directory inside DATADIR.
* yarns: Adapt to put morphologies in subdirsbaserock/richardmaw/S11284/morphologies-by-path-v4Richard Maw2014-07-107-190/+190
| | | | | | | | | | | | | We want to move our morphologies in our definitions repository into subdirectories, so they're more organised. We'd prefer to only refer to morphologies by file path, rather than a name that loosely corresponds to the file path, but we need to support that for backwards compatibility until we can move all of our morphologies into the definitions repository. However, since we want to eventually remove this, and we want to ensure that file paths work, we change the yarn tests to use file paths.
* Exorcise some old and unused commandsRichard Maw2014-07-072-53/+0
| | | | | | | | | | | | | `morph merge` only worked for a small subset of cases, and has been left to bit-rot, since we don't use it. `morph tag` is just a `git tag` when we have petrified definitions repository. We don't use it, nor do we need it, so it can go away rather than take up valuable development time fixing it when requirements change. `old-foo` have all been superceded by newer versions and are no-longer used.
* Remove check on checkout/branch that there are systemsRichard Maw2014-07-071-9/+0
| | | | | | | This was the wrong response to the problem of accidentally checking-out morph when trying to check out morphs. Now that it's called definitions, this is irrelevent, and aborting a checkout when this check fails is the wrong thing to do.
* Add yarn tests for new deployment functionalitybaserock/adamcoldrick/deploy-specific-systems-v5Adam Coldrick2014-06-182-0/+110
|
* Merge branch 'baserock/richardmaw/S11226/yarns-v2'Richard Maw2014-06-092-0/+126
|\ | | | | | | Reviewed-by: Sam Thursfield and Richard Ipsum
| * Add yarn to test initramfs deploymentsRichard Maw2014-06-062-0/+126
| |
* | Fix tests for new `morph edit` syntaxPaul Sherwood2014-06-092-21/+2
|/
* 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
|