summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJuraj Hercek <juraj.hercek@jhksoftware.com>2011-12-22 15:21:12 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-01-04 14:19:17 +0000
commit1f2867b79f1cd2bfbdc849ba5677a39db6fa3396 (patch)
treeca49a92e1a3d9ff719d6b0725b704df0dc71834e
parenta228f0a32c2c14d62effbbba5f4fada4cd3817f6 (diff)
downloadbitbake-1f2867b79f1cd2bfbdc849ba5677a39db6fa3396.tar.gz
fetch2/git: change colon to dot in ud.host
Local cloning of git repositories from DL_DIR into WORKDIR fails when using ssh URL with port specification e.g. "ssh://user@host:port/path/to/repo.git". Git fetcher clones such remote repository into "${DL_DIR}/git2/host:port.path.to.repo.git". However, when clonging from ${DL_DIR}/git2/host:port.path.to.repo.git into ${WORKDIR}, git fetcher fails with "ssh: Could not resolve hostname ${DLDIR}/git2/host: Name or service not known". A solution is to replace ":" by "." in host component, similarly as it is done when replacing "/" with "." in path component, so that local clone directory in DL_DIR looks like this: "host.port.path.to.repo.git". Signed-off-by: Juraj Hercek <juraj.hercek@jhksoftware.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--lib/bb/fetch2/git.py2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/bb/fetch2/git.py b/lib/bb/fetch2/git.py
index f203c5abb..d8337149b 100644
--- a/lib/bb/fetch2/git.py
+++ b/lib/bb/fetch2/git.py
@@ -115,7 +115,7 @@ class Git(FetchMethod):
ud.branches[name] = ud.revisions[name]
ud.revisions[name] = self.latest_revision(ud.url, ud, d, name)
- gitsrcname = '%s%s' % (ud.host, ud.path.replace('/', '.'))
+ gitsrcname = '%s%s' % (ud.host.replace(':','.'), ud.path.replace('/', '.'))
# for rebaseable git repo, it is necessary to keep mirror tar ball
# per revision, so that even the revision disappears from the
# upstream repo in the future, the mirror will remain intact and still