def checkout_vendor(repo, rev): # TODO(termie): this function is a good target for some optimizations :PERF name = repo.split('/')[-1] if name.endswith('.git'): name = name[:-4] working_dir = os.getcwd() revdir = os.path.join(VENDOR, '%s-%s' % (name, rev.replace('/', '_'))) modcheck = os.path.join(VENDOR, '.%s-%s' % (name, rev.replace('/', '_'))) try: if os.path.exists(modcheck): mtime = os.stat(modcheck).st_mtime if int(time.time()) - mtime < 10000: return revdir if not os.path.exists(revdir): utils.git('clone', repo, revdir) cd(revdir) utils.git('checkout', '-q', 'master') utils.git('pull', '-q') utils.git('checkout', '-q', rev) # write out a modified time with open(modcheck, 'w') as fd: fd.write('1') except environment.subprocess.CalledProcessError: LOG.warning(_('Failed to checkout %s'), repo) cd(working_dir) return revdir
def checkout_vendor(repo, rev): # TODO(termie): this function is a good target for some optimizations :PERF name = repo.split("/")[-1] if name.endswith(".git"): name = name[:-4] working_dir = os.getcwd() revdir = os.path.join(VENDOR, "%s-%s" % (name, rev.replace("/", "_"))) modcheck = os.path.join(VENDOR, ".%s-%s" % (name, rev.replace("/", "_"))) try: if os.path.exists(modcheck): mtime = os.stat(modcheck).st_mtime if int(time.time()) - mtime < 10000: return revdir if not os.path.exists(revdir): utils.git("clone", repo, revdir) cd(revdir) utils.git("checkout", "-q", "master") utils.git("pull", "-q") utils.git("checkout", "-q", rev) # write out a modified time with open(modcheck, "w") as fd: fd.write("1") except subprocess.CalledProcessError: LOG.warning(_("Failed to checkout %s"), repo) cd(working_dir) return revdir
def checkout_vendor(repo, rev): # TODO(termie): this function is a good target for some optimizations :PERF name = repo.split('/')[-1] if name.endswith('.git'): name = name[:-4] working_dir = os.getcwd() revdir = os.path.join(VENDOR, '%s-%s' % (name, rev.replace('/', '_'))) modcheck = os.path.join(VENDOR, '.%s-%s' % (name, rev.replace('/', '_'))) try: if os.path.exists(modcheck): mtime = os.stat(modcheck).st_mtime if int(time.time()) - mtime < 10000: return revdir if not os.path.exists(revdir): common_utils.git('clone', repo, revdir) os.chdir(revdir) common_utils.git('checkout', '-q', 'master') common_utils.git('pull', '-q') common_utils.git('checkout', '-q', rev) # write out a modified time with open(modcheck, 'w') as fd: fd.write('1') except environment.subprocess.CalledProcessError: LOG.warning(_('Failed to checkout %s'), repo) os.chdir(working_dir) return revdir
def checkout_vendor(repo, rev): name = repo.split('/')[-1] if name.endswith('.git'): name = name[:-4] working_dir = os.getcwd() revdir = os.path.join(VENDOR, '%s-%s' % (name, rev.replace('/', '_'))) modcheck = os.path.join(VENDOR, '.%s-%s' % (name, rev.replace('/', '_'))) try: if os.path.exists(modcheck): mtime = os.stat(modcheck).st_mtime if int(time.time()) - mtime < 10000: return revdir if not os.path.exists(revdir): utils.git('clone', repo, revdir) cd(revdir) utils.git('pull') utils.git('checkout', '-q', rev) # write out a modified time with open(modcheck, 'w') as fd: fd.write('1') except subprocess.CalledProcessError as e: logging.warning('Failed to checkout %s', repo) cd(working_dir) return revdir