diff options
| author | Robert Bragg <robert@linux.intel.com> | 2008-12-03 16:01:39 +0000 |
|---|---|---|
| committer | Robert Bragg <robert@linux.intel.com> | 2008-12-03 16:21:45 +0000 |
| commit | c1a12b7d20c95391f8d56962fafb1f0bfe7d1918 (patch) | |
| tree | 557099703f303042a5e7988734410a3e1a486cab /bitbake/lib/bb/fetch/git.py | |
| parent | a8b0e8a0342e4bc5bc05203793aaf56cfc445d2f (diff) | |
| download | poky-c1a12b7d20c95391f8d56962fafb1f0bfe7d1918.tar.gz | |
Adds username support to the git fetcher, and exports SSH_AGENT_PID + SSH_AUTH_SOCK
The SSH_AGENT_PID + SSH_AUTH_SOCK environment variables are needed if you
are using ssh-agent to hold passwords for your ssh keys.
Diffstat (limited to 'bitbake/lib/bb/fetch/git.py')
| -rw-r--r-- | bitbake/lib/bb/fetch/git.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/bitbake/lib/bb/fetch/git.py b/bitbake/lib/bb/fetch/git.py index aa26a500c7..26f2b47f2a 100644 --- a/bitbake/lib/bb/fetch/git.py +++ b/bitbake/lib/bb/fetch/git.py | |||
| @@ -66,6 +66,11 @@ class Git(Fetch): | |||
| 66 | bb.msg.debug(1, bb.msg.domain.Fetcher, "%s already exists (or was stashed). Skipping git checkout." % ud.localpath) | 66 | bb.msg.debug(1, bb.msg.domain.Fetcher, "%s already exists (or was stashed). Skipping git checkout." % ud.localpath) |
| 67 | return | 67 | return |
| 68 | 68 | ||
| 69 | if ud.user: | ||
| 70 | username = ud.user + '@' | ||
| 71 | else: | ||
| 72 | username = "" | ||
| 73 | |||
| 69 | gitsrcname = '%s%s' % (ud.host, ud.path.replace('/', '.')) | 74 | gitsrcname = '%s%s' % (ud.host, ud.path.replace('/', '.')) |
| 70 | 75 | ||
| 71 | repofilename = 'git_%s.tar.gz' % (gitsrcname) | 76 | repofilename = 'git_%s.tar.gz' % (gitsrcname) |
| @@ -81,13 +86,13 @@ class Git(Fetch): | |||
| 81 | os.chdir(repodir) | 86 | os.chdir(repodir) |
| 82 | runfetchcmd("tar -xzf %s" % (repofile), d) | 87 | runfetchcmd("tar -xzf %s" % (repofile), d) |
| 83 | else: | 88 | else: |
| 84 | runfetchcmd("git clone -n %s://%s%s %s" % (ud.proto, ud.host, ud.path, repodir), d) | 89 | runfetchcmd("git clone -n %s://%s%s%s %s" % (ud.proto, username, ud.host, ud.path, repodir), d) |
| 85 | 90 | ||
| 86 | os.chdir(repodir) | 91 | os.chdir(repodir) |
| 87 | # Remove all but the .git directory | 92 | # Remove all but the .git directory |
| 88 | runfetchcmd("rm * -Rf", d) | 93 | runfetchcmd("rm * -Rf", d) |
| 89 | runfetchcmd("git fetch %s://%s%s %s" % (ud.proto, ud.host, ud.path, ud.branch), d) | 94 | runfetchcmd("git fetch %s://%s%s%s %s" % (ud.proto, username, ud.host, ud.path, ud.branch), d) |
| 90 | runfetchcmd("git fetch --tags %s://%s%s" % (ud.proto, ud.host, ud.path), d) | 95 | runfetchcmd("git fetch --tags %s://%s%s%s" % (ud.proto, username, ud.host, ud.path), d) |
| 91 | runfetchcmd("git prune-packed", d) | 96 | runfetchcmd("git prune-packed", d) |
| 92 | runfetchcmd("git pack-redundant --all | xargs -r rm", d) | 97 | runfetchcmd("git pack-redundant --all | xargs -r rm", d) |
| 93 | 98 | ||
