| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
The residual `from e` was probably left there after a refactoring from
try-catch to exit-code-checking. While this could prevent the expected
`SourceError` being thrown, I couldn't find a proper way to trigger it since
`git show` has no documented return codes other than `0` and `128`.
|
| |
|
|
|
|
|
| |
Since these changes were effected in 3b17762a4cab23c238762ca32baa348788347473,
these stringifications are now implied and no longer needed.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This changes workspaces created with the git source element so that the
origin remote points to the source repository of the build element as
opposed to the internal repository in the bst cache.
This introduces an addition of the init_workspace method in the source
API. This method, which defaults to calling stage, is for the setup of
the workspace after the creation of the workspace directory.
This is a part of issue #53
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
|
|