| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I noticed this issue when running `bst track` on a system that contained
GLIBC. The following error occurred:
[--:--:--] START [gnu-toolchain/stage2-glibc.bst]: Tracking release/2.25/master from git://git.baserock.org/delta/glibc
Running host command /home/fedora/src/baserock/definitions/.cache/buildstream/sources/git/git___git_baserock_org_delta_glibc: /usr/bin/git fetch origin
[--:--:--] STATUS [gnu-toolchain/stage2-glibc.bst]: Running host command
/usr/bin/git fetch origin
error: cannot lock ref 'refs/heads/hjl/memcpy/dpdk/master': 'refs/heads/hjl/memcpy' exists; cannot create 'refs/heads/hjl/memcpy/dpdk/master'
From git://git.baserock.org/delta/glibc
! [new branch] hjl/memcpy/dpdk/master -> hjl/memcpy/dpdk/master (unable to update local ref)
error: cannot lock ref 'refs/heads/hjl/x86/master': 'refs/heads/hjl/x86' exists; cannot create 'refs/heads/hjl/x86/master'
! [new branch] hjl/x86/master -> hjl/x86/master (unable to update local ref)
error: cannot lock ref 'refs/heads/hjl/x86/math': 'refs/heads/hjl/x86' exists; cannot create 'refs/heads/hjl/x86/math'
! [new branch] hjl/x86/math -> hjl/x86/math (unable to update local ref)
error: cannot lock ref 'refs/heads/hjl/x86/optimize': 'refs/heads/hjl/x86' exists; cannot create 'refs/heads/hjl/x86/optimize'
! [new branch] hjl/x86/optimize -> hjl/x86/optimize (unable to update local ref)
error: some local refs could not be updated; try running
'git remote prune origin' to remove any old, conflicting branches
git source at gnu-toolchain/stage2-glibc.bst [line 4 column 2]: Failed to fetch from remote git repository: git://git.baserock.org/delta/glibc
The issue here is that my local clone had old remote-tracking refs which
conflicted with newer upstream refs. For example, there used to be a ref
named `hlj/memcpy` which I had mirrored locally. This has been deleted
and now a ref exists named `hlj/memcpy/dpdk/master`. The new ref cannot
be pulled because Git considers it to conflict with the old one.
The solution is to use `git fetch --prune` when updating so that Git
removes any outdated remote-tracking refs before trying to create any
new ones.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This required adding two new APIs to make up for it on the Source
o get_project_directory()
Added here because elements should not be accessing external
resources, Sources needed for local files and GPG keys and such
o translate_url()
Used by sources to mish-mash the project aliases and create
real urls.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
NOTE: This changes cache keys for existing sources which
have submodules configured.
Presence of submodules in the source configuration changes the
configuration significantly, this should be considered in cache keys.
|
|
|
|
|
|
|
|
|
| |
In Python 3.2 this was renamed to read_file(), and use of readfp() earns
us a deprecation warning when running the test suite:
tests/sources/git.py::test_submodule_fetch
/home/shared/src/buildstream/buildstream/plugins/sources/git.py:172: DeprecationWarning: This method will be removed in future versions. Use 'parser.read_file()' instead.
parser.readfp(io)
|
| |
|
|
|
|
|
|
|
|
|
| |
This was failing only the first time around, if the pipeline was
loaded and the git mirror for the primary module is not yet present.
Need to re-introspect the presence of submodules at stage time
just so that the GitSource knows to stage submodules which is previously
fetched at fetch() time.
|
| |
|
|
|
|
| |
Less logging, silent nested activities too.
|
|
|
|
|
| |
This is more accurate than 'dict', it can be a ChainMap sometimes
which will not be a 'dict'
|
| |
|
| |
|
|
|
|
|
|
| |
Also added have_all_refs() helper and ensure that we only
report a Consistency.CACHED state if all submodules are also
ready for checkout.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
This takes the problem of logging away completely.
|
| |
|
|
|
|
|
|
| |
Maybe we aught to add a 'tmp' directory separate from the build directory.
This commit also fixes the lookup for submodules by their path.
|
|
|
|
| |
These are left over from pre-submodule days
|
| |
|
| |
|
| |
|
|
|
|
| |
This is needed for refresh functionality.
|
|
|
|
|
| |
Ensure submodules are updated and refreshed at source->refresh()
and source->fetch() time, support staging etc.
|
| |
|
| |
|
|
|