diff options
author | Nishanth Amuluru | 2011-01-11 22:41:51 +0530 |
---|---|---|
committer | Nishanth Amuluru | 2011-01-11 22:41:51 +0530 |
commit | b03203c8cb991c16ac8a3d74c8c4078182d0bb48 (patch) | |
tree | 7cf13b2deacbfaaec99edb431b83ddd5ea734a52 /eggs/infrae.subversion-1.4.5-py2.6.egg/infrae/subversion/Native.py | |
parent | 0c50203cd9eb94b819883c3110922e873f003138 (diff) | |
download | pytask-b03203c8cb991c16ac8a3d74c8c4078182d0bb48.tar.gz pytask-b03203c8cb991c16ac8a3d74c8c4078182d0bb48.tar.bz2 pytask-b03203c8cb991c16ac8a3d74c8c4078182d0bb48.zip |
removed all the buildout files
Diffstat (limited to 'eggs/infrae.subversion-1.4.5-py2.6.egg/infrae/subversion/Native.py')
-rw-r--r-- | eggs/infrae.subversion-1.4.5-py2.6.egg/infrae/subversion/Native.py | 140 |
1 files changed, 0 insertions, 140 deletions
diff --git a/eggs/infrae.subversion-1.4.5-py2.6.egg/infrae/subversion/Native.py b/eggs/infrae.subversion-1.4.5-py2.6.egg/infrae/subversion/Native.py deleted file mode 100644 index d43b4b7..0000000 --- a/eggs/infrae.subversion-1.4.5-py2.6.egg/infrae/subversion/Native.py +++ /dev/null @@ -1,140 +0,0 @@ -# Copyright (c) 2007-2008 Infrae. All rights reserved. -# $Id: Native.py 33170 2009-01-21 15:46:45Z sylvain $ - -from pysvn import wc_status_kind, opt_revision_kind, wc_notify_action -import pysvn - -from Common import BaseRecipe, prepareURLs -from Common import checkAddedPaths, checkExistPath, reportInvalidFiles - -import os -import re -import getpass - - -def createSVNClient(recipe): - """Create a pysvn client, and setup some callback and options. - """ - - def callback_ssl(info): - print "-------- SECURITY WARNING --------" - print "There is no valid SSL certificat for %s." % info['realm'] - print "Check that the files are correct after being fetched." - print "-------- SECURITY WARNING --------" - return True, 0, False - - def callback_login(realm, username, may_save): - print 'Authentication realm: ' + realm - user = raw_input('Username: ') - password = getpass.getpass('Password for ' + "'" + user + "': ") - return True, user, password, True - - def callback_notify(info): - if info['action'] == wc_notify_action.update_completed: - path = info['path'] - url = recipe.urls.get(path, None) - if not (url is None): - recipe._updateRevisionInformation(url, path, info['revision']) - - client = pysvn.Client() - client.set_interactive(True) - client.callback_ssl_server_trust_prompt = callback_ssl - client.callback_get_login = callback_login - if not (recipe is None): - client.callback_notify = callback_notify - return client - - -class Recipe(BaseRecipe): - """infrae.subversion recipe. - """ - - def __init__(self, buildout, name, options): - super(Recipe, self).__init__(buildout, name, options) - if self.verbose: - print 'Using pysvn implementation.' - self.client = createSVNClient(self) - if not self.export: - self._updateAllRevisionInformation() - self._exportInformationToOptions() - - def _updateRevisionInformation(self, link, path, revision=None): - """Update revision information on a path. - """ - if revision is None: - if self.export: - return - info = self.client.info(path) - revision = info['revision'] - - assert (revision.kind == opt_revision_kind.number) - super(Recipe, self)._updateRevisionInformation(link, revision.number) - - def _updatePath(self, link, path): - """Update a single path. - """ - self.client.update(path) - - def _parseRevisionInUrl(self, url): - """Parse URL to extract revision number. This is not done by - pysvn, so we have to do it by ourself. - """ - num_release = re.compile('(.*)@([0-9]+)$') - match = num_release.match(url) - if match: - return (match.group(1), - pysvn.Revision(opt_revision_kind.number, - int(match.group(2)))) - return (url, pysvn.Revision(opt_revision_kind.head)) - - def _installPath(self, link, path): - """Checkout a single entry. - """ - link, wanted_revision = self._parseRevisionInUrl(link) - if self.export: - method = self.client.export - else: - method = self.client.checkout - method(link, path, revision=wanted_revision, recurse=True) - - -def uninstall(name, options): - r""" - This is an uninstallation hook for the 'infrae.subversion' recipe. - - Its only job is to raise an exception when there are changes in a - subversion tree that a user might not want to lose. This function - does *not* delete or otherwise touch any files. - - The location of the path is passed as options['location']. - """ - if bool(options.get('export', False)): - return # SVN Export, there is nothing to check. - - if bool(options.get('ignore_verification', False)): - return # Verification disabled. - - # XXX This makes the assumption that we're in the buildout - # directory and that our part is in 'parts'. We don't have - # options['buildout'] available so no - # 'buildout:parts-directory'. - location = options.get('location', os.path.join('.', 'parts', name)) - urls = prepareURLs(location, options['urls']) - client = createSVNClient(None) - - bad_svn_status = [wc_status_kind.modified, - wc_status_kind.missing, - wc_status_kind.unversioned, ] - - if not checkExistPath(location): - return - - checkAddedPaths(location, urls) - - for path in urls.keys(): - if not checkExistPath(path): - continue - - badfiles = filter(lambda e: e['text_status'] in bad_svn_status, - client.status(path)) - reportInvalidFiles(path, name, [file['path'] for file in badfiles]) |