summaryrefslogtreecommitdiff
path: root/yarns/implementations.yarn
Commit message (Collapse)AuthorAgeFilesLines
* Add `morph upgrade` command, deprecate `morph deploy --upgrade`Sam Thursfield2014-09-011-1/+1
| | | | | | 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-281-1/+23
| | | | | | | | | | | 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.
* 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
* Make morph show-branch-root print the pathRichard Maw2014-08-121-1/+1
| | | | | | | | | 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-121-25/+28
| | | | | | | | | 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-121-48/+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.
* Add yarns for checking the state of temporary build branchesbaserock/richardmaw/S11416/no-unnecessary-temp-branchesRichard Maw2014-08-121-0/+70
|
* Yarns: implement pushing a whole system branchRichard Maw2014-08-121-2/+1
|
* Yarns: misc fixesRichard Maw2014-08-121-1/+1
|
* 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-221-11/+13
|
* Remove use of "morph" field in chunk specs in yarnsRichard Maw2014-07-221-3/+0
| | | | | | 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-101-44/+46
| | | | | | | | | | | | | 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-071-32/+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.
* Add yarn tests for new deployment functionalitybaserock/adamcoldrick/deploy-specific-systems-v5Adam Coldrick2014-06-181-0/+19
|
* Merge branch 'baserock/richardmaw/S11226/yarns-v2'Richard Maw2014-06-091-0/+43
|\ | | | | | | Reviewed-by: Sam Thursfield and Richard Ipsum
| * Add yarn to test initramfs deploymentsRichard Maw2014-06-061-0/+43
| |
* | Fix tests for new `morph edit` syntaxPaul Sherwood2014-06-091-9/+1
|/
* Test nested deploymentsRichard Maw2014-03-141-21/+54
|
* yarns: set deployment name based on system nameRichard Maw2014-03-141-1/+1
|
* Convert colons to slashes for chunk nameLars Wirzenius2014-03-061-3/+5
|
* Fix pathname (colon to slash) in test implementationsLars Wirzenius2014-03-061-21/+21
|
* deploy: Add upgrading to deployment.yarnSam Thursfield2014-03-041-0/+10
|
* yarns: Ensure machine altered morphologies don't include repo/refRichard Maw2014-02-141-0/+7
|
* 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.
* Remove tests for working with null refsRichard Maw2014-02-131-11/+0
| | | | | 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-131-10/+0
|
* yarns: Add regression test for cache-key clashRichard Maw2014-01-221-0/+15
|
* yarns: Move system artifact inclusion implementationRichard Maw2014-01-221-0/+12
| | | | | | 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 tests for building systems with splittingRichard Maw2014-01-161-0/+9
| | | | | | | 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-151-3/+40
|
* 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-091-2/+2
| | | | | 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-201-3/+58
|
* yarns: un-parameterise architecture in system morphologiesRichard Maw2013-11-291-7/+15
| | | | | | 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-291-1/+1
| | | | | | | | | | | | | | 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-291-12/+13
| | | | | | | | | | 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.
* Standardizes language and refactors some implementation stepsDaniel Firth2013-11-051-66/+54
|
* Added scenario test to prevent morph edit from being used without a system ↵Daniel Firth2013-11-011-1/+5
| | | | argument
* Added scenario test for preventing building uncommitted systemsDaniel Firth2013-11-011-0/+10
|
* Some tests refactorized for better understanding.Pedro Alvarez2013-10-311-1/+5
|
* Deploying a non-cluster morphology now displays an error messageDaniel Firth2013-10-301-1/+8
|
* Added scenario test for preventing cross-buildingDaniel Firth2013-10-301-0/+25
|
* Adding testPedro Alvarez2013-10-281-1/+22
|
* Add fstab.configureLars Wirzenius2013-10-241-0/+77
| | | | | 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-081-0/+37
|\ | | | | | | | | Reviewed-by: Lars Wirzenius Reviewed-by: Richard Maw
| * Add yarn test for autotools version guesserRichard Ipsum2013-10-081-0/+35
|/