diff options
author | Brian Dolbec <brian.dolbec@gmail.com> | 2011-02-17 13:48:54 -0800 |
---|---|---|
committer | Brian Dolbec <brian.dolbec@gmail.com> | 2011-02-17 13:48:54 -0800 |
commit | af55bea519642b9742135498e5fddaececab7d1f (patch) | |
tree | 738b455b887019b0c9eba836851018e7c894fe31 /layman | |
parent | cc15f2551e105540850101572ccba275a6fc1ace (diff) | |
download | layman-af55bea519642b9742135498e5fddaececab7d1f.tar.gz layman-af55bea519642b9742135498e5fddaececab7d1f.tar.bz2 layman-af55bea519642b9742135498e5fddaececab7d1f.zip |
add per repo type config options
Diffstat (limited to 'layman')
-rw-r--r-- | layman/overlays/bzr.py | 15 | ||||
-rw-r--r-- | layman/overlays/cvs.py | 8 | ||||
-rw-r--r-- | layman/overlays/darcs.py | 17 | ||||
-rw-r--r-- | layman/overlays/git.py | 8 | ||||
-rw-r--r-- | layman/overlays/mercurial.py | 17 | ||||
-rw-r--r-- | layman/overlays/rsync.py | 5 | ||||
-rw-r--r-- | layman/overlays/svn.py | 31 |
7 files changed, 85 insertions, 16 deletions
diff --git a/layman/overlays/bzr.py b/layman/overlays/bzr.py index e73c2f4..a236210 100644 --- a/layman/overlays/bzr.py +++ b/layman/overlays/bzr.py @@ -50,8 +50,14 @@ class BzrOverlay(OverlaySource): self.supported() + cfg_opts = self.config["bzr_addopts"] + # bzr get SOURCE TARGET - args = ['get', self.src + '/', path([base, self.parent.name])] + if cfg_opts: + args = ['get', cfg_opts, + self.src + '/', path([base, self.parent.name])] + else: + args = ['get', self.src + '/', path([base, self.parent.name])] return self.run_command(*args) def sync(self, base, quiet = False): @@ -59,8 +65,13 @@ class BzrOverlay(OverlaySource): self.supported() + cfg_opts = self.config["bzr_syncopts"] + # bzr pull --overwrite SOURCE - args = ['pull', '--overwrite', self.src] + if cfg_opts: + args = ['pull', cfg_opts, '--overwrite', self.src] + else: + args = ['pull', '--overwrite', self.src] return self.run_command(*args, cwd=path([base, self.parent.name])) def supported(self): diff --git a/layman/overlays/cvs.py b/layman/overlays/cvs.py index f8fc277..e4ee5eb 100644 --- a/layman/overlays/cvs.py +++ b/layman/overlays/cvs.py @@ -74,12 +74,16 @@ class CvsOverlay(OverlaySource): self.supported() + cfg_opts = self.config["cvs_addopts"] + # cvs [-q] co -d SOURCE SCOPE args = [] if quiet: args.append('-q') args.append('co') args.append('-d') + if cfg_opts: + args.append(cfg_opts) args.append(self.parent.name) args.append(self.subpath) @@ -90,12 +94,16 @@ class CvsOverlay(OverlaySource): self.supported() + cfg_opts = self.config["cvs_syncopts"] + # cvs [-q] update -d args = [] if quiet: args.append('-q') args.append('update') args.append('-d') + if cfg_opts: + args.append(cfg_opts) return self.run_command(*args, cwd=path([base, self.parent.name])) def supported(self): diff --git a/layman/overlays/darcs.py b/layman/overlays/darcs.py index 7d89477..cfaba51 100644 --- a/layman/overlays/darcs.py +++ b/layman/overlays/darcs.py @@ -49,8 +49,16 @@ class DarcsOverlay(OverlaySource): self.supported() + cfg_opts = self.config["darcs_addopts"] + # darcs get --partial SOURCE TARGET - args = ['get', '--partial', self.src + '/', path([base, self.parent.name])] + if cfg_opts: + args = ['get', '--partial', cfg_opts, + self.src + '/', path([base, self.parent.name])] + else: + args = ['get', '--partial', + self.src + '/', path([base, self.parent.name])] + return self.run_command(*args) def sync(self, base, quiet = False): @@ -58,8 +66,13 @@ class DarcsOverlay(OverlaySource): self.supported() + cfg_opts = self.config["darcs_addopts"] + # darcs pull --all SOURCE - args = ['pull', '--all', self.src] + if cfg_opts: + args = ['pull', '--all', cfg_opts, self.src] + else: + args = ['pull', '--all', self.src] return self.run_command(*args, cwd=path([base, self.parent.name])) def supported(self): diff --git a/layman/overlays/git.py b/layman/overlays/git.py index caa73f4..9517398 100644 --- a/layman/overlays/git.py +++ b/layman/overlays/git.py @@ -54,10 +54,14 @@ class GitOverlay(OverlaySource): return source + '/' return source + cfg_opts = self.config["git_addopts"] + # git clone [-q] SOURCE TARGET args = ['clone'] if quiet: args.append('-q') + if cfg_opts: + args.append(cfg_opts) args.append(fix_git_source(self.src)) args.append(path([base, self.parent.name])) return self.run_command(*args) @@ -67,9 +71,13 @@ class GitOverlay(OverlaySource): self.supported() + cfg_opts = self.config["git_syncopts"] + args = ['pull'] if quiet: args.append('-q') + if cfg_opts: + args.append(cfg_opts) return self.run_command(*args, cwd=path([base, self.parent.name])) def supported(self): diff --git a/layman/overlays/mercurial.py b/layman/overlays/mercurial.py index 06cf59d..377ad4c 100644 --- a/layman/overlays/mercurial.py +++ b/layman/overlays/mercurial.py @@ -49,8 +49,15 @@ class MercurialOverlay(OverlaySource): self.supported() + cfg_opts = self.config["mercurial_addopts"] + # hg clone SOURCE TARGET - args = ['clone', self.src + '/', path([base, self.parent.name])] + if cfg_opts: + args = ['clone', cfg_opts, + self.src + '/', path([base, self.parent.name])] + else: + args = ['clone', self.src + '/', path([base, self.parent.name])] + return self.run_command(*args) def sync(self, base, quiet = False): @@ -58,8 +65,14 @@ class MercurialOverlay(OverlaySource): self.supported() + cfg_opts = self.config["mercurial_syncopts"] + # hg pull -u SOURCE - args = ['pull', '-u', self.src] + if cfg_opts: + args = ['pull', '-u', cfg_opts, self.src] + else: + args = ['pull', '-u', self.src] + return self.run_command(*args, cwd=path([base, self.parent.name])) def supported(self): diff --git a/layman/overlays/rsync.py b/layman/overlays/rsync.py index 3a5a342..d6f3281 100644 --- a/layman/overlays/rsync.py +++ b/layman/overlays/rsync.py @@ -61,8 +61,13 @@ class RsyncOverlay(OverlaySource): # rsync OPTIONS [-q] SOURCE TARGET args = ['-rlptDvz', '--progress', '--delete', '--delete-after', '--timeout=180', '--exclude=distfiles/*', '--exclude=local/*', '--exclude=packages/*'] + + cfg_opts = self.config["rsync_syncopts"] + if quiet: args.append('-q') + if cfg_opts: + args.append(cfg_opts) args.append(self.src + '/') args.append(path([base, self.parent.name])) diff --git a/layman/overlays/svn.py b/layman/overlays/svn.py index 2a30198..69d7b05 100644 --- a/layman/overlays/svn.py +++ b/layman/overlays/svn.py @@ -1,8 +1,8 @@ #!/usr/bin/python # -*- coding: utf-8 -*- -################################################################################# +############################################################################### # LAYMAN SVN OVERLAY HANDLER -################################################################################# +############################################################################### # File: svn.py # # Handles subversion overlays @@ -18,20 +18,20 @@ __version__ = "$Id: svn.py 236 2006-09-05 20:39:37Z wrobel $" -#=============================================================================== +#============================================================================== # # Dependencies # -#------------------------------------------------------------------------------- +#------------------------------------------------------------------------------ from layman.utils import path from layman.overlays.source import OverlaySource, require_supported -#=============================================================================== +#============================================================================== # # Class SvnOverlay # -#------------------------------------------------------------------------------- +#------------------------------------------------------------------------------ class SvnOverlay(OverlaySource): ''' Handles subversion overlays.''' @@ -39,9 +39,11 @@ class SvnOverlay(OverlaySource): type = 'Subversion' type_key = 'svn' - def __init__(self, parent, xml, config, _location, ignore = 0, quiet = False): + def __init__(self, parent, xml, config, _location, + ignore = 0, quiet = False): - super(SvnOverlay, self).__init__(parent, xml, config, _location, ignore, quiet) + super(SvnOverlay, self).__init__( + parent, xml,config, _location, ignore, quiet) def add(self, base, quiet = False): '''Add overlay.''' @@ -50,9 +52,13 @@ class SvnOverlay(OverlaySource): super(SvnOverlay, self).add(base) + cfg_opts = self.config["svn_addopts"] + args = ['co'] if quiet: args.append('-q') + if cfg_opts: + args.append(cfg_opts) args.append(self.src + '/@') args.append(path([base, self.parent.name])) @@ -71,10 +77,14 @@ class SvnOverlay(OverlaySource): repo_part = repo_part + '@' return path([base, repo_part]) + cfg_opts = self.config["svn_syncopts"] + # svn up [-q] TARGET args = ['up'] if quiet: args.append('-q') + if cfg_opts: + args.append(cfg_opts) args.append(checkout_location()) return self.run_command(*args) @@ -82,5 +92,6 @@ class SvnOverlay(OverlaySource): def supported(self): '''Overlay type supported?''' - return require_supported([(self.command(), 'svn', - 'dev-vcs/subversion'),]) + return require_supported( + [(self.command(), 'svn','dev-vcs/subversion'),] + ) |