summaryrefslogtreecommitdiffstats
path: root/src/pyfedpkg
diff options
context:
space:
mode:
authorHans Ulrich Niedermann <hun@n-dimensional.de>2010-08-10 13:13:15 +0200
committerHans Ulrich Niedermann <hun@n-dimensional.de>2011-01-21 11:00:22 +0100
commit39b9be927e4cbbfeed1ee2e28a1badde0db5c19d (patch)
tree644365d61d1bc642f341ec55f933df30311e2b7e /src/pyfedpkg
parentbd606390a95b6364b90dedcc4bfcbd6d3ad76dd6 (diff)
downloadfedora-packager-4/initial-merge.tar.gz
fedora-packager-4/initial-merge.tar.xz
fedora-packager-4/initial-merge.zip
Add "fedpkg clone --initial-merge" argument4/initial-merge
Diffstat (limited to 'src/pyfedpkg')
-rw-r--r--src/pyfedpkg/__init__.py7
-rwxr-xr-xsrc/pyfedpkg/initial_merge.py10
2 files changed, 15 insertions, 2 deletions
diff --git a/src/pyfedpkg/__init__.py b/src/pyfedpkg/__init__.py
index 51982ea..9c76fc0 100644
--- a/src/pyfedpkg/__init__.py
+++ b/src/pyfedpkg/__init__.py
@@ -31,8 +31,6 @@ import OpenSSL
import fnmatch
import offtrac
-from . import initial_merge
-
# Define some global variables, put them here to make it easy to change
LOOKASIDE = 'http://pkgs.fedoraproject.org/repo/pkgs'
@@ -50,6 +48,11 @@ BRANCHFILTER = 'f\d\d\/master|master|el\d\/master|olpc\d\/master'
class FedpkgError(Exception):
pass
+
+# This module needs FedpkgError to be defined
+from . import initial_merge
+
+
# Setup our logger
# Null logger to avoid spurrious messages, add a handler in app code
class NullHandler(logging.Handler):
diff --git a/src/pyfedpkg/initial_merge.py b/src/pyfedpkg/initial_merge.py
index 4964745..f22453f 100755
--- a/src/pyfedpkg/initial_merge.py
+++ b/src/pyfedpkg/initial_merge.py
@@ -169,7 +169,17 @@ class Filter(object):
self.branch_list = [item]
+class UnknownRepoTypeError(pyfedpkg.FedpkgError):
+ pass
+
+
def handle_repo(repo, dry_run=False):
+ if type(repo) == str:
+ repo = git.Repo(repo)
+ elif isinstance(repo, git.Repo):
+ pass
+ else:
+ raise UnknownRepoTypeError("%s" % repo)
log.info("######## initial-merge %s ########" % repo.working_tree_dir)
_locals, remotes = pyfedpkg._list_branches(repo=repo)
aa = [ Branch(repo.git.rev_parse('%s^{tree}' % b), b) for b in remotes ]