self._archive_dir = "/tmp/%s" % trailer
self._tmp_archive = True
self._u_invoke_client("make-archive", self._archive_name,
- self._archive_dir, directory=path)
+ self._archive_dir, cwd=path)
def _invoke_client(self, *args, **kwargs):
"""
Invoke the client on our archive.
version = "0.1"
self._project_name = "%s--%s--%s" % (category, branch, version)
self._invoke_client("archive-setup", self._project_name,
- directory=path)
+ cwd=path)
self._tmp_project = True
def _remove_project(self):
assert self._tmp_project == True
# http://regexps.srparish.net/tutorial-tla/new-source.html
# http://regexps.srparish.net/tutorial-tla/importing-first.html
self._invoke_client("init-tree", self._project_name,
- directory=path)
+ cwd=path)
self._adjust_naming_conventions(path)
self._invoke_client("import", "--summary", "Began versioning",
- directory=path)
+ cwd=path)
def _vcs_cleanup(self):
if self._tmp_project == True:
self._remove_project()
assert self._archive_name != None
def _get_archive_project_name(self, root):
# get project names
- status,output,error = self._u_invoke_client("tree-version", directory=root)
+ status,output,error = self._u_invoke_client("tree-version", cwd=root)
# e.g output
# jdoe@example.com--bugs-everywhere-auto-2008.22.24.52/be--mainline--0.1
archive_name,project_name = output.rstrip('\n').split('/')
vcs.VCS._vcs_duplicate_repo(self, directory, revision)
else:
status,output,error = \
- self._u_invoke_client("get", revision,directory)
+ self._u_invoke_client("get", revision, directory)
def _vcs_commit(self, commitfile, allow_empty=False):
if allow_empty == False:
# arch applies empty commits without complaining, so check first
status,output,error = self._u_invoke_client("root", path)
return output.rstrip('\n')
def _vcs_init(self, path):
- self._u_invoke_client("init", directory=path)
+ self._u_invoke_client("init", cwd=path)
def _vcs_get_user_id(self):
status,output,error = self._u_invoke_client("whoami")
return output.rstrip('\n')
return None
return os.path.dirname(darcs_dir)
def _vcs_init(self, path):
- self._u_invoke_client("init", directory=path)
+ self._u_invoke_client("init", cwd=path)
def _vcs_get_user_id(self):
# following http://darcs.net/manual/node4.html#SECTION00410030000000000000
# as of June 29th, 2009
# Darcs versions < 2.0.0pre2 lack the "show contents" command
status,output,error = self._u_invoke_client( \
- "diff", "--unified", "--from-patch", revision, path)
+ "diff", "--unified", "--from-patch", revision, path,
+ unicode_output=False)
major_patch = output
status,output,error = self._u_invoke_client( \
- "diff", "--unified", "--patch", revision, path)
+ "diff", "--unified", "--patch", revision, path,
+ unicode_output=False)
target_patch = output
# "--output -" to be supported in GNU patch > 2.5.9
if os.path.isdir(path) != True:
path = os.path.dirname(path)
status,output,error = self._u_invoke_client("rev-parse", "--git-dir",
- directory=path)
+ cwd=path)
gitdir = os.path.join(path, output.rstrip('\n'))
dirname = os.path.abspath(os.path.dirname(gitdir))
return dirname
def _vcs_init(self, path):
- self._u_invoke_client("init", directory=path)
+ self._u_invoke_client("init", cwd=path)
def _vcs_get_user_id(self):
status,output,error = \
self._u_invoke_client("config", "user.name", expect=(0,1))
if revision==None:
vcs.VCS._vcs_duplicate_repo(self, directory, revision)
else:
- #self._u_invoke_client("archive", revision, directory) # makes tarball
- self._u_invoke_client("clone", "--no-checkout",".",directory)
- self._u_invoke_client("checkout", revision, directory=directory)
+ self._u_invoke_client("clone", "--no-checkout", ".", directory)
+ self._u_invoke_client("checkout", revision, cwd=directory)
def _vcs_commit(self, commitfile, allow_empty=False):
args = ['commit', '--all', '--file', commitfile]
if allow_empty == True:
return True
return False
def _vcs_root(self, path):
- status,output,error = self._u_invoke_client("root", directory=path)
+ status,output,error = self._u_invoke_client("root", cwd=path)
return output.rstrip('\n')
def _vcs_init(self, path):
- self._u_invoke_client("init", directory=path)
+ self._u_invoke_client("init", cwd=path)
def _vcs_get_user_id(self):
status,output,error = self._u_invoke_client("showconfig","ui.username")
return output.rstrip('\n')
raise CommandError(args, status, stdout, stderr)
return status, stdout, stderr
def _u_invoke_client(self, *args, **kwargs):
- directory = kwargs.get('directory',None)
- expect = kwargs.get('expect', (0,))
- stdin = kwargs.get('stdin', None)
cl_args = [self.client]
cl_args.extend(args)
- return self._u_invoke(cl_args, stdin=stdin,expect=expect,cwd=directory)
+ return self._u_invoke(cl_args, **kwargs)
def _u_search_parent_directories(self, path, filename):
"""
Find the file (or directory) named filename in path or in any