|
19 | 19 | new_changes, |
20 | 20 | new_unreleased, |
21 | 21 | ) |
| 22 | +from exasol.toolbox.util.git import Git |
22 | 23 | from exasol.toolbox.util.version import ( |
23 | 24 | ReleaseTypes, |
24 | 25 | Version, |
25 | 26 | ) |
26 | 27 | from noxconfig import PROJECT_CONFIG |
27 | 28 |
|
28 | 29 |
|
29 | | -def _create_release_prepare_parser() -> argparse.ArgumentParser: |
| 30 | +def _create_parser() -> argparse.ArgumentParser: |
30 | 31 | parser = argparse.ArgumentParser( |
31 | 32 | prog="nox -s release:prepare", |
32 | 33 | usage="nox -s release:prepare -- [-h] [-t | --type {major,minor,patch}]", |
@@ -133,19 +134,17 @@ def prepare_release(session: Session) -> None: |
133 | 134 | """ |
134 | 135 | Prepare the project for a new release. |
135 | 136 | """ |
136 | | - parser = _create_release_prepare_parser() |
| 137 | + parser = _create_parser() |
137 | 138 | args = parser.parse_args(session.posargs) |
138 | | - |
139 | 139 | new_version = Version.upgrade_version_from_poetry(args.type) |
140 | 140 |
|
141 | 141 | if not args.no_branch and not args.no_add: |
142 | | - session.run("git", "switch", "-c", f"release/prepare-{new_version}") |
143 | | - |
144 | | - pm = NoxTasks.plugin_manager(PROJECT_CONFIG) |
| 142 | + Git.create_and_switch_to_branch(f"release/prepare-{new_version}") |
145 | 143 |
|
146 | 144 | _ = _update_project_version(session, new_version) |
147 | 145 | changelog, changes, unreleased = _update_changelog(new_version) |
148 | 146 |
|
| 147 | + pm = NoxTasks.plugin_manager(PROJECT_CONFIG) |
149 | 148 | pm.hook.prepare_release_update_version( |
150 | 149 | session=session, config=PROJECT_CONFIG, version=new_version |
151 | 150 | ) |
|
0 commit comments