def do_all_projects_remotes(args): """Run the given git-command in every project, once for each remote. Pass -p to do it in parallel""" man = load_manifest() if args[0] == '-p': parallel = True del args[0] else: parallel = False towait = [] for (name, project) in man.projects.iteritems(): repo = GitRepo(workdir_for_project(project)) for remote_name in project.remotes.keys(): cmd = args + [remote_name] print >> sys.stderr, "In project: ", name, " running ", " ".join( cmd) p = repo.command_process(cmd) if not parallel: p.Wait() print >> sys.stderr else: towait.append(p) for p in towait: p.Wait()
def do_all_projects_remotes(args): """Run the given git-command in every project, once for each remote. Pass -p to do it in parallel""" man = load_manifest() if args[0] == '-p': parallel = True del args[0] else: parallel = False towait = [] for (name, project) in man.projects.iteritems(): repo = GitRepo(workdir_for_project(project)) for remote_name in project.remotes.keys(): cmd = args + [remote_name] print >>sys.stderr, "In project: ", name, " running ", " ".join(cmd) p = repo.command_process(cmd) if not parallel: p.Wait() print >>sys.stderr else: towait.append(p) for p in towait: p.Wait()
def ensure_remotes(args): """Ensure that remotes are set up""" man = load_manifest() for (proj_name, project) in man.projects.iteritems(): repo = GitRepo(workdir_for_project(project)) for remote_name in project.remotes: remote = man.remotes[remote_name] new_url = remote.fetch % proj_name p = repo.command_process(["config", "--get", "remote.%s.url" % remote_name], capture_stdout=True) if p.Wait() == 0: cur_url = p.stdout.strip() if cur_url != new_url: repo.check_command(["config", "--set", "remote.%s.url" % remote_name, new_url]) else: repo.check_command(["remote", "add", remote_name, new_url])
def ensure_remotes(args): """Ensure that remotes are set up""" man = load_manifest() for (proj_name, project) in man.projects.iteritems(): repo = GitRepo(workdir_for_project(project)) for remote_name in project.remotes: remote = man.remotes[remote_name] new_url = remote.fetch % proj_name p = repo.command_process( ["config", "--get", "remote.%s.url" % remote_name], capture_stdout=True) if p.Wait() == 0: cur_url = p.stdout.strip() if cur_url != new_url: repo.check_command([ "config", "--set", "remote.%s.url" % remote_name, new_url ]) else: repo.check_command(["remote", "add", remote_name, new_url])