From 207c94e509b108849fb14b604755a34d6a821a70 Mon Sep 17 00:00:00 2001 From: Gertjan van den Burg Date: Sat, 4 Apr 2020 23:21:09 +0100 Subject: update release script --- make_release.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'make_release.py') diff --git a/make_release.py b/make_release.py index a19b5fd..f335059 100644 --- a/make_release.py +++ b/make_release.py @@ -96,6 +96,12 @@ class UpdateChangelog(Step): self.print_run("vi CHANGELOG.md") +class UpdateReadme(Step): + def action(self, context): + self.instruct(f"Update readme if necessary") + self.print_run("vi README.md") + + class RunTests(Step): def action(self, context): self.instruct("Run the unit tests") @@ -159,7 +165,7 @@ class TestPackage(Step): self.instruct( f"Ensure that the following command gives version {context['version']}" ) - self.print_run(f"p2r -h") + self.print_run(f"p2r -V") class DeactivateVenv(Step): @@ -218,6 +224,7 @@ def main(): PushToGitHub(), BumpVersionPackage(), UpdateChangelog(), + UpdateReadme(), MakeClean(), RunTests(), MakeDist(), -- cgit v1.2.3 From 73903815c774332a8bf41a1d8c8a0c09eaeda5b3 Mon Sep 17 00:00:00 2001 From: Gertjan van den Burg Date: Sat, 25 Apr 2020 14:37:29 +0100 Subject: Update release script --- make_release.py | 56 +++++++++++++++++++++++++++++++++----------------------- 1 file changed, 33 insertions(+), 23 deletions(-) (limited to 'make_release.py') diff --git a/make_release.py b/make_release.py index f335059..b3ea935 100644 --- a/make_release.py +++ b/make_release.py @@ -14,6 +14,7 @@ Date: 2019-07-23 import colorama import os +import sys def colored(msg, color=None, style=None): @@ -51,6 +52,12 @@ def get_package_name(): ) return nameline.split("=")[-1].strip().strip('"') +def get_package_version(): + ctx = {} + with open(f"{pkgname.lower()}/__version__.py", "r") as fp: + exec(fp.read(), ctx) + return ctx['__version__'] + class Step: def pre(self, context): @@ -119,10 +126,7 @@ class BumpVersionPackage(Step): def _get_version(self, context): # Get the version from the version file - about = {} - with open(f"{context['pkgname'].lower()}/__version__.py", "r") as fp: - exec(fp.read(), about) - return about["__version__"] + return get_package_version(context['pkgname']) class MakeClean(Step): @@ -219,30 +223,36 @@ class WaitForRTD(Step): def main(): colorama.init() procedure = [ - GitToMaster(), - GitAdd(), - PushToGitHub(), - BumpVersionPackage(), - UpdateChangelog(), - UpdateReadme(), - MakeClean(), - RunTests(), - MakeDist(), - PushToTestPyPI(), - InstallFromTestPyPI(), - TestPackage(), - DeactivateVenv(), - GitAdd(), - PushToPyPI(), - GitTagVersion(), - PushToGitHub(), + ("gittomaster", GitToMaster()), + ("gitadd1", GitAdd()), + ("push1", PushToGitHub()), + ("bumpversion", BumpVersionPackage()), + ("changelog", UpdateChangelog()), + ("readme", UpdateReadme()), + ("clean", MakeClean()), + ("tests", RunTests()), + ("dist", MakeDist()), + ("testpypi", PushToTestPyPI()), + ("install", InstallFromTestPyPI()), + ("testpkg", TestPackage()), + ("deactivate", DeactivateVenv()), + ("gitadd2", GitAdd()), + ("pypi", PushToPyPI()), + ("tag", GitTagVersion()), + ("push2", PushToGitHub()), ] context = {} context["pkgname"] = get_package_name() - for step in procedure: + context["version"] = get_package_version(context["pkgname"]) + skip = True if target else False + for name, step in procedure: + if not name == target and skip: + continue + skip = False step.run(context) cprint("\nDone!", color="yellow", style="bright") if __name__ == "__main__": - main() + target = sys.argv[1] if len(sys.argv) > 1 else None + main(target=target) -- cgit v1.2.3 From 944dcb1827905c2b87b6b062e33e66841c434747 Mon Sep 17 00:00:00 2001 From: Gertjan van den Burg Date: Mon, 27 Apr 2020 17:17:09 +0100 Subject: minor fixes to release script --- make_release.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'make_release.py') diff --git a/make_release.py b/make_release.py index b3ea935..cb4af59 100644 --- a/make_release.py +++ b/make_release.py @@ -52,7 +52,7 @@ def get_package_name(): ) return nameline.split("=")[-1].strip().strip('"') -def get_package_version(): +def get_package_version(pkgname): ctx = {} with open(f"{pkgname.lower()}/__version__.py", "r") as fp: exec(fp.read(), ctx) @@ -220,7 +220,7 @@ class WaitForRTD(Step): ) -def main(): +def main(target=None): colorama.init() procedure = [ ("gittomaster", GitToMaster()), -- cgit v1.2.3 From 1630200c652029f42b36bf2982534638bb185287 Mon Sep 17 00:00:00 2001 From: Gertjan van den Burg Date: Mon, 27 Apr 2020 18:22:16 +0100 Subject: Update release script with more automation --- make_release.py | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) (limited to 'make_release.py') diff --git a/make_release.py b/make_release.py index cb4af59..b0c01d1 100644 --- a/make_release.py +++ b/make_release.py @@ -15,6 +15,7 @@ Date: 2019-07-23 import colorama import os import sys +import tempfile def colored(msg, color=None, style=None): @@ -52,11 +53,12 @@ def get_package_name(): ) return nameline.split("=")[-1].strip().strip('"') + def get_package_version(pkgname): ctx = {} with open(f"{pkgname.lower()}/__version__.py", "r") as fp: exec(fp.read(), ctx) - return ctx['__version__'] + return ctx["__version__"] class Step: @@ -118,7 +120,7 @@ class RunTests(Step): class BumpVersionPackage(Step): def action(self, context): self.instruct(f"Update __version__.py with new version") - self.print_run(f"vi {context['pkgname']}/__version__.py") + self.do_cmd(f"vi {context['pkgname']}/__version__.py") def post(self, context): wait_for_enter() @@ -126,7 +128,7 @@ class BumpVersionPackage(Step): def _get_version(self, context): # Get the version from the version file - return get_package_version(context['pkgname']) + return get_package_version(context["pkgname"]) class MakeClean(Step): @@ -153,15 +155,14 @@ class PushToTestPyPI(Step): class InstallFromTestPyPI(Step): def action(self, context): - self.print_run("cd /tmp/") - self.print_cmd("rm -rf ./venv") - self.print_cmd("virtualenv ./venv") - self.print_cmd("cd ./venv") - self.print_cmd("source bin/activate") - self.print_cmd( + tmpvenv = tempfile.mkdtemp(prefix="p2r_venv_") + self.do_cmd( + f"virtualenv {tmpvenv} && source {tmpvenv}/bin/activate && " "pip install --index-url https://test.pypi.org/simple/ " - + f"--extra-index-url https://pypi.org/simple {context['pkgname']}=={context['version']}" + "--extra-index-url https://pypi.org/simple " + f"{context['pkgname']}=={context['version']}" ) + context["tmpvenv"] = tmpvenv class TestPackage(Step): @@ -169,13 +170,12 @@ class TestPackage(Step): self.instruct( f"Ensure that the following command gives version {context['version']}" ) - self.print_run(f"p2r -V") + self.do_cmd(f"source {context['tmpvenv']}/bin/activate && p2r -V") -class DeactivateVenv(Step): +class RemoveVenv(Step): def action(self, context): - self.print_run("deactivate") - self.instruct("Go back to the project directory") + self.do_cmd(f"rm -rf {context['tmpvenv']}") class GitTagVersion(Step): @@ -235,7 +235,7 @@ def main(target=None): ("testpypi", PushToTestPyPI()), ("install", InstallFromTestPyPI()), ("testpkg", TestPackage()), - ("deactivate", DeactivateVenv()), + ("remove_venv", RemoveVenv()), ("gitadd2", GitAdd()), ("pypi", PushToPyPI()), ("tag", GitTagVersion()), -- cgit v1.2.3 From d4f76fe6a4749e2ae02fa03c33c29bdbc711adef Mon Sep 17 00:00:00 2001 From: Gertjan van den Burg Date: Tue, 5 May 2020 11:45:20 +0100 Subject: Minor fix to release script --- make_release.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'make_release.py') diff --git a/make_release.py b/make_release.py index b0c01d1..d729c8a 100644 --- a/make_release.py +++ b/make_release.py @@ -158,7 +158,8 @@ class InstallFromTestPyPI(Step): tmpvenv = tempfile.mkdtemp(prefix="p2r_venv_") self.do_cmd( f"virtualenv {tmpvenv} && source {tmpvenv}/bin/activate && " - "pip install --index-url https://test.pypi.org/simple/ " + "pip install --no-cache-dir --index-url " + "https://test.pypi.org/simple/ " "--extra-index-url https://pypi.org/simple " f"{context['pkgname']}=={context['version']}" ) -- cgit v1.2.3 From 9dca9ef0b1eaec44e8c521811b4e8370ba84375b Mon Sep 17 00:00:00 2001 From: Gertjan van den Burg Date: Tue, 20 Oct 2020 21:27:06 +0200 Subject: Remove use of virtualenv in release script --- make_release.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'make_release.py') diff --git a/make_release.py b/make_release.py index d729c8a..f3bc9f2 100644 --- a/make_release.py +++ b/make_release.py @@ -157,7 +157,7 @@ class InstallFromTestPyPI(Step): def action(self, context): tmpvenv = tempfile.mkdtemp(prefix="p2r_venv_") self.do_cmd( - f"virtualenv {tmpvenv} && source {tmpvenv}/bin/activate && " + f"python -m venv {tmpvenv} && source {tmpvenv}/bin/activate && " "pip install --no-cache-dir --index-url " "https://test.pypi.org/simple/ " "--extra-index-url https://pypi.org/simple " -- cgit v1.2.3