diff options
author | 2011-08-07 01:38:34 -0700 | |
---|---|---|
committer | 2011-08-07 01:47:00 -0700 | |
commit | acc9c9163a0ff4fe3e19e4cb49228b93f1c5999e (patch) | |
tree | 23b28c954b624047e62a8f11b5bbc800a693a1b8 /layman/overlays/svn.py | |
parent | tidy up some task spacing, eliminate a duped error output, comment out some d... (diff) | |
download | layman-acc9c9163a0ff4fe3e19e4cb49228b93f1c5999e.tar.gz layman-acc9c9163a0ff4fe3e19e4cb49228b93f1c5999e.tar.bz2 layman-acc9c9163a0ff4fe3e19e4cb49228b93f1c5999e.zip |
run "svn cleanup..." for keyboard interrupts, bug 377035
Diffstat (limited to 'layman/overlays/svn.py')
-rw-r--r-- | layman/overlays/svn.py | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/layman/overlays/svn.py b/layman/overlays/svn.py index 97f03d6..b9a5a34 100644 --- a/layman/overlays/svn.py +++ b/layman/overlays/svn.py @@ -55,7 +55,7 @@ class SvnOverlay(OverlaySource): super(SvnOverlay, self).add(base) cfg_opts = self.config["svn_addopts"] - target = path([base, self.parent.name]) + self.target = path([base, self.parent.name]) args = ['co'] if quiet: @@ -63,11 +63,11 @@ class SvnOverlay(OverlaySource): if len(cfg_opts): args.append(cfg_opts) args.append(self.src + '/@') - args.append(target) + args.append(self.target) return self.postsync( self.run_command(self.command(), args, cmd=self.type), - cwd=target) + cwd=self.target) def sync(self, base, quiet = False): '''Sync overlay.''' @@ -84,7 +84,7 @@ class SvnOverlay(OverlaySource): return path([base, repo_part]) cfg_opts = self.config["svn_syncopts"] - target = checkout_location() + self.target = checkout_location() # svn up [-q] TARGET args = ['up'] @@ -92,11 +92,11 @@ class SvnOverlay(OverlaySource): args.append('-q') if len(cfg_opts): args.append(cfg_opts) - args.append(target) + args.append(self.target) return self.postsync( self.run_command(self.command(), args, cmd=self.type), - cwd=target) + cwd=self.target) def supported(self): '''Overlay type supported?''' @@ -104,3 +104,13 @@ class SvnOverlay(OverlaySource): return require_supported( [(self.command(), 'svn','dev-vcs/subversion'),], self.output.warn) + + def cleanup(self): + '''Code to run in the event of a keyboard interrupt. + runs svn cleanup + ''' + self.output.warn("SVN: preparing to run cleanup()", 2) + args = ["cleanup"] + args.append(self.target) + cleanup = self.run_command(self.command(), args, cmd="svn cleanup") + return |