[gnome-continuous-yocto/gnomeostree-3.28-rocko: 43/218] recipetool: create: fix conflict between SRCREV and tag
- From: Emmanuele Bassi <ebassi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-continuous-yocto/gnomeostree-3.28-rocko: 43/218] recipetool: create: fix conflict between SRCREV and tag
- Date: Mon, 21 May 2018 08:38:51 +0000 (UTC)
commit b443c1741681eff6508a72539da22fc3386bcc95
Author: Chang Rebecca Swee Fun <rebecca swee fun chang intel com>
Date: Wed Nov 15 10:01:13 2017 +0800
recipetool: create: fix conflict between SRCREV and tag
If you specify 'tag=' for a git URL and passed to recipetool create, you
will get into Bitbake expansion error shown below:
----- snip -----
$ devtool add --version 2.4.2 mbedtls "git://github.com/ARMmbed/mbedtls;tag=mbedtls-2.4.2"
...
bb.data_smart.ExpansionError: Failure expanding variable SRCPV, expression was
${@bb.fetch2.get_srcrev(d)} which triggered exception FetchError: Fetcher failure: Conflicting revisions
(abeccb9dbd7e19ae91ac50e1edd3803111c5f9b6 from SRCREV and mbedtls-2.4.2 from the url) found, please specify
one valid value
----- snip -----
Assuming the tag is valid, we should get the tag commit hash and
drop the usage of 'tag=' from SRC_URI. By using a commit hash
corresponding to the tag will prevent bitbake from accessing
remote repository in order to expand SRCPV.
(From OE-Core rev: 4953d54dd06ff7025406d2df6a71c95162cc1ec7)
Signed-off-by: Chang Rebecca Swee Fun <rebecca swee fun chang intel com>
Signed-off-by: Ross Burton <ross burton intel com>
(cherry picked from commit 53f8effa3eb07dc7035ff9933e7918318f242579)
Signed-off-by: Armin Kuster <akuster808 gmail com>
Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>
scripts/lib/recipetool/create.py | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
---
diff --git a/scripts/lib/recipetool/create.py b/scripts/lib/recipetool/create.py
index 055bdef..5bf939e 100644
--- a/scripts/lib/recipetool/create.py
+++ b/scripts/lib/recipetool/create.py
@@ -477,7 +477,6 @@ def create_recipe(args):
if tag:
# Keep a copy of tag and append nobranch=1 then remove tag from URL.
# Bitbake fetcher unable to fetch when {AUTOREV} and tag is set at the same time.
- # We will re-introduce tag argument after bitbake fetcher process is complete.
storeTagName = params['tag']
params['nobranch'] = '1'
del params['tag']
@@ -549,13 +548,11 @@ def create_recipe(args):
# Since we might have a value in srcbranch, we need to
# recontruct the srcuri to include 'branch' in params.
+ scheme, network, path, user, passwd, params = bb.fetch2.decodeurl(srcuri)
if srcbranch:
- scheme, network, path, user, passwd, params = bb.fetch2.decodeurl(srcuri)
params['branch'] = srcbranch
- srcuri = bb.fetch2.encodeurl((scheme, network, path, user, passwd, params))
if storeTagName and scheme in ['git', 'gitsm']:
- # Re-introduced tag variable from storeTagName
# Check srcrev using tag and check validity of the tag
cmd = ('git rev-parse --verify %s' % (storeTagName))
try:
@@ -565,6 +562,9 @@ def create_recipe(args):
logger.error(str(err))
logger.error("Possibly wrong tag name is provided")
sys.exit(1)
+ # Drop tag from srcuri as it will have conflicts with SRCREV during recipe parse.
+ del params['tag']
+ srcuri = bb.fetch2.encodeurl((scheme, network, path, user, passwd, params))
if os.path.exists(os.path.join(srctree, '.gitmodules')) and srcuri.startswith('git://'):
srcuri = 'gitsm://' + srcuri[6:]
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]