[oe-commits] [bitbake] branch master-next updated: bitbake: layerindex: use branch when specified

git at git.openembedded.org git at git.openembedded.org
Fri Feb 14 18:16:11 UTC 2020


This is an automated email from the git hooks/post-receive script.

rpurdie pushed a commit to branch master-next
in repository bitbake.

The following commit(s) were added to refs/heads/master-next by this push:
     new acb962a  bitbake: layerindex: use branch when specified
acb962a is described below

commit acb962a7874e82fcadc516ed0e907af91f5d4b15
Author: Jon Mason <jdmason at kudzu.us>
AuthorDate: Thu Dec 19 11:39:08 2019 -0600

    bitbake: layerindex: use branch when specified
    
    When currently specified, the branch is used to verify the versioning of
    the meta layer, but the master branch is checked out.  This change
    allows for the branch to be specified.  Now it is easy to specify all
    of the meta layers being added are of the same version, without having
    to do it in each individual git tree.  Also, it will error if there are
    branches without a matching version.  Finally, this allows for meta
    layer git trees without a master branch.
    
    Signed-off-by: Jon Mason <jdmason at kudzu.us>
    
    Minor rework of the patch to use the layerBranch actual_branch since
    the layerindex referenced branch may be different then the overall
    release branch.
    
    Also adjust the patch to use the default git checkout branch instead of
    master if no branch was specified.  (Some repositories don't have a
    master branch.)
    
    Signed-off-by: Mark Hatle <mark.hatle at kernel.crashing.org>
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
 lib/bblayers/layerindex.py | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/lib/bblayers/layerindex.py b/lib/bblayers/layerindex.py
index 57cd902..aa3b682 100644
--- a/lib/bblayers/layerindex.py
+++ b/lib/bblayers/layerindex.py
@@ -24,7 +24,7 @@ class LayerIndexPlugin(ActionPlugin):
     This class inherits ActionPlugin to get do_add_layer.
     """
 
-    def get_fetch_layer(self, fetchdir, url, subdir, fetch_layer):
+    def get_fetch_layer(self, fetchdir, url, subdir, fetch_layer, branch):
         layername = self.get_layer_name(url)
         if os.path.splitext(layername)[1] == '.git':
             layername = os.path.splitext(layername)[0]
@@ -32,9 +32,13 @@ class LayerIndexPlugin(ActionPlugin):
         layerdir = os.path.join(repodir, subdir)
         if not os.path.exists(repodir):
             if fetch_layer:
-                result = subprocess.call(['git', 'clone', url, repodir])
+                cmd = ['git', 'clone', '-b' , branch, url, repodir]
+                if not branch:
+                    # Branch really shouldn't be empty, but use the repo default if it is
+                    cmd = ['git', 'clone', url, repodir]
+                result = subprocess.call(cmd)
                 if result:
-                    logger.error("Failed to download %s" % url)
+                    logger.error("Failed to download %s (%s)" % (url, branch))
                     return None, None, None
                 else:
                     return subdir, layername, layerdir
@@ -171,7 +175,8 @@ class LayerIndexPlugin(ActionPlugin):
                 subdir, name, layerdir = self.get_fetch_layer(fetchdir,
                                                       layerBranch.layer.vcs_url,
                                                       layerBranch.vcs_subdir,
-                                                      not args.show_only)
+                                                      not args.show_only,
+                                                      layerBranch.actual_branch)
                 if not name:
                     # Error already shown
                     return 1

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list