Thank you, please let me know if the patch need a v2. Rebecca
From: Ross Burton <[email protected]> Date: Monday, 11 December 2017 at 9:34 PM To: "Chang, Rebecca Swee Fun" <[email protected]> Cc: OpenEmbedded Core Mailing List <[email protected]> Subject: Re: [OE-core] [PATCH] recipetool: create: fix conflict between SRCREV and tag I think there were selftest failures and I removed it to see what happened, added back again now. Ross On 11 December 2017 at 01:10, Chang, Rebecca Swee Fun <[email protected]<mailto:[email protected]>> wrote: Ping again. I noticed that it was on mut2 2 weeks ago. I think this was dropped somehow at that point. May I know what I can do in order to make it into M1 cycle? Thanks, Rebecca On 15/11/2017, 10:00 AM, "[email protected]<mailto:[email protected]> on behalf of Chang Rebecca Swee Fun" <[email protected]<mailto:[email protected]> on behalf of [email protected]<mailto:[email protected]>> wrote: 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<http://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. Signed-off-by: Chang Rebecca Swee Fun <[email protected]<mailto:[email protected]>> --- scripts/lib/recipetool/create.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/scripts/lib/recipetool/create.py b/scripts/lib/recipetool/create.py index 54e7e85..2fc9e0a 100644 --- a/scripts/lib/recipetool/create.py +++ b/scripts/lib/recipetool/create.py @@ -480,7 +480,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'] @@ -552,13 +551,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: @@ -568,6 +565,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:] -- 2.7.4 -- _______________________________________________ Openembedded-core mailing list [email protected]<mailto:[email protected]> http://lists.openembedded.org/mailman/listinfo/openembedded-core -- _______________________________________________ Openembedded-core mailing list [email protected]<mailto:[email protected]> http://lists.openembedded.org/mailman/listinfo/openembedded-core
-- _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
