aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/bb/fetch/__init__.py11
-rw-r--r--lib/bb/fetch/git.py11
2 files changed, 14 insertions, 8 deletions
diff --git a/lib/bb/fetch/__init__.py b/lib/bb/fetch/__init__.py
index e61dc6305..163946924 100644
--- a/lib/bb/fetch/__init__.py
+++ b/lib/bb/fetch/__init__.py
@@ -99,6 +99,12 @@ def fetcher_init(d):
pd.delDomain("BB_URI_HEADREVS")
else:
bb.msg.fatal(bb.msg.domain.Fetcher, "Invalid SRCREV cache policy of: %s" % srcrev_policy)
+
+ for m in methods:
+ bb.note(str(m))
+ if hasattr(m, "init"):
+ m.init(d)
+
# Make sure our domains exist
pd.addDomain("BB_URI_HEADREVS")
pd.addDomain("BB_URI_LOCALCOUNT")
@@ -572,12 +578,9 @@ class Fetch(object):
"""
"""
- has_sortable_valid = hasattr(self, "_sortable_revision_valid")
has_sortable = hasattr(self, "_sortable_revision")
- if has_sortable and not has_sortable_valid:
- return self._sortable_revision(url, ud, d)
- elif has_sortable and self._sortable_revision_valid(url, ud, d):
+ if has_sortable:
return self._sortable_revision(url, ud, d)
pd = persist_data.PersistData(d)
diff --git a/lib/bb/fetch/git.py b/lib/bb/fetch/git.py
index 911c5e437..ff480ec27 100644
--- a/lib/bb/fetch/git.py
+++ b/lib/bb/fetch/git.py
@@ -28,6 +28,12 @@ from bb.fetch import runfetchcmd
class Git(Fetch):
"""Class to fetch a module or modules from git repositories"""
+ def init(self, d):
+ #
+ # Only enable _sortable revision if the key is set
+ #
+ if bb.data.getVar("BB_GIT_CLONE_FOR_SRCREV", d, True):
+ self._sortable_revision = self._sortable_revision_disabled
def supports(self, url, ud, d):
"""
Check to see if a given url can be fetched with git.
@@ -145,10 +151,7 @@ class Git(Fetch):
def _build_revision(self, url, ud, d):
return ud.tag
- def _sortable_revision_valid(self, url, ud, d):
- return bb.data.getVar("BB_GIT_CLONE_FOR_SRCREV", d, True) or False
-
- def _sortable_revision(self, url, ud, d):
+ def _sortable_revision_disabled(self, url, ud, d):
"""
This is only called when _sortable_revision_valid called true