From patchwork Thu Dec 22 14:21:12 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [bitbake-devel] fetch2/git: change colon to dot in ud.host Date: Thu, 22 Dec 2011 14:21:12 -0000 From: Juraj Hercek X-Patchwork-Id: 17497 Message-Id: <1324563672-26403-2-git-send-email-juraj.hercek@jhksoftware.com> To: Bitbake Devel 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 --- lib/bb/fetch2/git.py | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/lib/bb/fetch2/git.py b/lib/bb/fetch2/git.py index f203c5a..d833714 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