| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
This is a helper to avoid having the same code in other places. Have
it in the one place it belongs.
|
|
|
|
|
| |
Currently the message is still displayed "Updating xxx" but no
update is actually done.
|
|
|
|
|
|
|
| |
This makes a non-backward-compatible change to morph which switches it to using
tarballs instead of bundles when initialising cached git repositories. This is
faster because it doesn't require index-pack --fix-thin operations on the
machine running morph.
|
|
|
|
|
|
| |
Log (at chatty) when we start and finish bundle downloads. If we fail for any
reason, log that reason since otherwise it gets swallowed if the plain git
clone succeeds.
|
|
|
|
|
|
|
|
| |
This reworks the code for managing and using the git caches in morph to treat
the caches as bare repositories which are mirrors of where we clone from. In
addition we correctly prune the branches during updates, so that we don't end
up accumulating pointless branches over and over. This is even more important
with branch-and-merge generating temporary build refs for things.
|
|
|
|
|
|
|
|
|
| |
This was done with the aid of the pep8 script, available by running
`easy_install pep8`.
It may be worth making this part of ./check, but that will require
putting pep8 into the development tools stratum.
This should be easy, given pep8 has no external dependencies.
|
| |
|
| |
|
|
|
|
| |
Also, add debugging messages for debugging prefix expansion.
|
|
|
|
| |
The tests, they still fail.
|
|
|
|
|
|
|
|
| |
Changed the delimieter between push and pull patterns to be #,
since = is reasonably frequent in URLs, and # should never be
necessary in git urls.
Oh my how many tests now fail.
|
| |
|
| |
|
|
|
|
|
| |
This way, cliapp will automatically print an error message, rather
than a stack trace.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
It needed shutil, but that exception was being missed.
_git needs to be able to handle a different current directory for
remote set-url to work
|
|
|
|
|
|
| |
When cloning from a bundle it makes the origin remote url point to the
bundle. This is not ideal as we want to update these repositories later
from upstream.
|
|
|
|
| |
They must end with .bndl as that is the format lorry generates
|
|
|
|
|
|
|
|
| |
Also change _fetch to throw its exception as since it is more pythonic
to throw exceptions than return exit status, other error handling needed
to be caught, so it hsa been kept consistent.
This required the tests to throw an exception as well
|
|
|
|
|
| |
It should check that it doesn't already have the repository cached
under a different base-url before cloning, likewise with bundles.
|
| |
|
|
|
|
|
|
|
|
| |
The self._exists method needs to be used instead of raw os.path.exists,
so that unit tests can override it easily.
Also, a tiny clarification so that the caller of _clone_with_bundle
decides whether it's OK to try to download a bundle.
|
| |
|
| |
|
| |
|
| |
|
|
Jannis and I discussed a refactoring of most of morph's internals
to reduce coupling and increase cohesion. This is one of the results:
we'll want a couple of classes to manage locally cached git repositories.
This commit adds the LocalRepoCache class to manage a the git cache
directory. Later on, we'll add the CachedRepo class to represent
individual repositories.
|