def commitTut(msg): os.chdir(f"{TUT_BASE}") console(f"In {os.getcwd()}") run(["git", "add", "--all", "."]) run(["git", "commit", "-m", msg]) run(["git", "push", "origin", "master"]) os.chdir(f"{TF_BASE}")
def main(): (task, msg, remaining) = readArgs() if not task: return elif task == "a": tfbrowse(msg, remaining) elif task == "t": tftest(msg, remaining) elif task == "docs": pdoc3serve(PKG) elif task == "pdocs": pdoc3(PKG) elif task == "sdocs": shipDocs(ORG, REPO, PKG) elif task == "clean": clean() elif task == "l": clean() run(["python3", "setup.py", "develop"]) elif task == "lp": clean() run(["python3", "setup.py", "sdist"]) distFiles = glob(f"dist/{PACKAGE}-*.tar.gz") run(["pip3", "install", distFiles[0]]) elif task == "i": clean makeDist(pypi=False) run([ "pip3", "install", "--upgrade", "--no-index", "--find-links", f'file://{TF_BASE}/dist"', PACKAGE, ]) elif task == "g": shipDocs(ORG, REPO, PKG) commit(task, msg) elif task == "apps": commitApps(msg) elif task == "tut": commitTut(msg) elif task == "v": showVersion() elif task in {"r", "r1", "r2", "r3"}: adjustVersion(task) elif task == "ship": showVersion() if not currentVersion: console("No current version") return answer = input("right version ? [yn]") if answer != "y": return shipDocs(ORG, REPO, PKG) makeDist() commit(task, msg)
def commitApps(msg): for app in apps: os.chdir(f"{AN_BASE}/app-{app}") console(f"In {os.getcwd()}") run(["git", "add", "--all", "."]) run(["git", "commit", "-m", msg]) run(["git", "push", "origin", "master"]) os.chdir(f"{TF_BASE}")
def showVersion(): global currentVersion versions = set() for (key, c) in VERSION_CONFIG.items(): with open(c["file"]) as fh: text = fh.read() match = c["re"].search(text) version = match.group(1) console(f'{version} (according to {c["file"]})') versions.add(version) currentVersion = None if len(versions) == 1: currentVersion = list(versions)[0]
def readArgs(): args = sys.argv[1:] if not len(args) or args[0] in {"-h", "--help", "help"}: console(HELP) return (False, None, []) arg = args[0] if arg not in { "a", "t", "docs", "pdocs", "sdocs", "clean", "l", "lp", "i", "g", "ship", "data", "apps", "tut", "v", "r1", "r2", "r3", }: console(HELP) return (False, None, []) if arg in {"g", "apps", "tut", "ship"}: if len(args) < 2: console("Provide a commit message") return (False, None, []) return (arg, args[1], args[2:]) if arg in {"a", "t", "data"}: if len(args) < 2: if arg in {"a", "data"}: console(f"Provide a data source [{appStr}]") elif arg in {"t"}: console("Provide a test suite [relations, qperf]") return (False, None, []) return (arg, args[1], args[2:]) return (arg, None, [])
def tftest(suite, remaining): suiteDir = f"{TEST_BASE}/generic" suiteFile = f"{suite}.py" good = True try: os.chdir(suiteDir) except Exception: good = False console(f'Cannot find TF test directory "{suiteDir}"') if not good: return if not os.path.exists(suiteFile): console(f'Cannot find TF test suite "{suite}"') return rargs = " ".join(remaining) cmdLine = f"python3 {suiteFile} -v {rargs}" try: run(cmdLine, shell=True) except KeyboardInterrupt: pass
def adjustVersion(task): for (key, c) in VERSION_CONFIG.items(): console(f'Adjusting version in {c["file"]}') with open(c["file"]) as fh: text = fh.read() text = c["re"].sub(replaceVersion(task, c["mask"]), text) with open(c["file"], "w") as fh: fh.write(text) if currentVersion == newVersion: console(f"Rebuilding version {newVersion}") else: console(f"Replacing version {currentVersion} by {newVersion}")
def readArgs(): args = sys.argv[1:] if not len(args) or args[0] in {"-h", "--help", "help"}: console(HELP) return (False, None, []) arg = args[0] if arg not in { "docs", "pdocs", "sdocs", "ship", }: console(HELP) return (False, None, []) if arg in {'ship'} and len(args) < 2: console(HELP) console("Provide a commit message") return (False, None, []) return (arg, None, [" ".join(args[1:])])