[ostree] ostbuild: Unify mirrordir lookup code
- From: Colin Walters <walters src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [ostree] ostbuild: Unify mirrordir lookup code
- Date: Thu, 2 Feb 2012 14:29:34 +0000 (UTC)
commit df92b8d46fc32b68ef64fe987efb2332bc34e09f
Author: Colin Walters <walters verbum org>
Date: Thu Feb 2 08:40:18 2012 -0500
ostbuild: Unify mirrordir lookup code
src/ostbuild/pyostbuild/buildutil.py | 6 ++++++
src/ostbuild/pyostbuild/builtin_build.py | 8 ++------
src/ostbuild/pyostbuild/builtin_resolve.py | 11 +++--------
3 files changed, 11 insertions(+), 14 deletions(-)
---
diff --git a/src/ostbuild/pyostbuild/buildutil.py b/src/ostbuild/pyostbuild/buildutil.py
index 3a3716b..e3199a8 100755
--- a/src/ostbuild/pyostbuild/buildutil.py
+++ b/src/ostbuild/pyostbuild/buildutil.py
@@ -17,6 +17,7 @@
import os
import re
+import urlparse
from .subprocess_helpers import run_sync_get_output
@@ -31,6 +32,11 @@ BUILD_ENV = {
'TZ': 'EST5EDT'
}
+def get_mirrordir(mirrordir, keytype, uri, prefix=''):
+ assert keytype == 'git'
+ parsed = urlparse.urlsplit(uri)
+ return os.path.join(mirrordir, prefix, keytype, parsed.scheme, parsed.netloc, parsed.path[1:])
+
def find_user_chroot_path():
# We need to search PATH here manually so we correctly pick up an
# ostree install in e.g. ~/bin even though we're going to set PATH
diff --git a/src/ostbuild/pyostbuild/builtin_build.py b/src/ostbuild/pyostbuild/builtin_build.py
index bb1e53d..ffce8b6 100755
--- a/src/ostbuild/pyostbuild/builtin_build.py
+++ b/src/ostbuild/pyostbuild/builtin_build.py
@@ -41,10 +41,6 @@ class OstbuildBuild(builtins.Builtin):
def __init__(self):
builtins.Builtin.__init__(self)
- def _mirror_for_url(self, url):
- parsed = urlparse.urlsplit(url)
- return os.path.join(self.mirrordir, 'git', parsed.scheme, parsed.netloc, parsed.path[1:])
-
def _fixup_submodule_references(self, cwd):
submodules_status_text = run_sync_get_output(['git', 'submodule', 'status'], cwd=cwd)
submodule_status_lines = submodules_status_text.split('\n')
@@ -56,7 +52,7 @@ class OstbuildBuild(builtins.Builtin):
(sub_checksum, sub_name) = line.split(' ', 1)
sub_url = run_sync_get_output(['git', 'config', '-f', '.gitmodules',
'submodule.%s.url' % (sub_name, )], cwd=cwd)
- mirrordir = self._mirror_for_url(sub_url)
+ mirrordir = buildutil.get_mirrordir(self.mirrordir, 'git', sub_url)
run_sync(['git', 'config', 'submodule.%s.url' % (sub_name, ), 'file://' + mirrordir], cwd=cwd)
return have_submodules
@@ -185,7 +181,7 @@ class OstbuildBuild(builtins.Builtin):
(keytype, uri) = self._parse_src_key(meta['src'])
- mirror = self._mirror_for_url(uri)
+ mirror = buildutil.get_mirrordir(self.mirrordir, keytype, uri)
component_src = self._get_vcs_checkout(name, keytype, mirror, branch,
overwrite=not self.args.debug_shell)
diff --git a/src/ostbuild/pyostbuild/builtin_resolve.py b/src/ostbuild/pyostbuild/builtin_resolve.py
index 9f35cd3..5e0e037 100755
--- a/src/ostbuild/pyostbuild/builtin_resolve.py
+++ b/src/ostbuild/pyostbuild/builtin_resolve.py
@@ -36,13 +36,8 @@ class OstbuildResolve(builtins.Builtin):
def __init__(self):
builtins.Builtin.__init__(self)
- def _get_mirrordir(self, keytype, uri, prefix=''):
- assert keytype == 'git'
- parsed = urlparse.urlsplit(uri)
- return os.path.join(self.mirrordir, prefix, keytype, parsed.scheme, parsed.netloc, parsed.path[1:])
-
def _ensure_vcs_mirror(self, name, keytype, uri, branch):
- mirror = self._get_mirrordir(keytype, uri)
+ mirror = buildutil.get_mirrordir(self.mirrordir, keytype, uri)
tmp_mirror = mirror + '.tmp'
if os.path.isdir(tmp_mirror):
shutil.rmtree(tmp_mirror)
@@ -62,7 +57,7 @@ class OstbuildResolve(builtins.Builtin):
current_vcs_version = current_vcs_version.strip()
if current_vcs_version != last_fetch_contents:
log("last fetch %r differs from branch %r" % (last_fetch_contents, current_vcs_version))
- tmp_checkout = self._get_mirrordir(keytype, uri, prefix='_tmp-checkouts')
+ tmp_checkout = buildutil.get_mirrordir(self.mirrordir, keytype, uri, prefix='_tmp-checkouts')
if os.path.isdir(tmp_checkout):
shutil.rmtree(tmp_checkout)
parent = os.path.dirname(tmp_checkout)
@@ -168,7 +163,7 @@ class OstbuildResolve(builtins.Builtin):
name = component['name']
try:
fetch_components.index(name)
- mirrordir = self._get_mirrordir(keytype, uri)
+ mirrordir = buildutil.get_mirrordir(self.mirrordir, keytype, uri)
except ValueError, e:
mirrordir = self._ensure_vcs_mirror(name, keytype, uri, component['branch'])
revision = buildutil.get_git_version_describe(mirrordir,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]