def determine_release_tag(ctx: TagContext) -> None: click.secho("> Determining the release tag.", fg="cyan") head_ref = ctx.release_pr["head"]["ref"] click.secho(f"PR head ref is {head_ref}") match = re.match(r"release-(.+)-v(\d+\.\d+\.\d+)", head_ref) rp13_match = re.match(r"release-please--branches--(.+)--components--(.+)", head_ref) title_match = re.match(r"chore\(.+\): release (.+) (\d+\.\d+\.\d+)", ctx.release_pr["title"]) if match is not None: ctx.package_name = match.group(1) ctx.release_version = match.group(2) ctx.release_tag = f"{ctx.package_name}/v{ctx.release_version}" elif rp13_match is not None and title_match is not None: ctx.package_name = title_match.group(1) ctx.release_version = title_match.group(2) ctx.release_tag = f"{ctx.package_name}/v{ctx.release_version}" if ctx.release_tag is None: click.secho( "I couldn't determine what the release tag should be from the PR's " f"head ref {head_ref}.", fg="red", ) ctx.release_tag = click.prompt( "What should the release tag be (for example, google-cloud-storage/v1.2.3)?" ) click.secho(f"Package name is {ctx.package_name}") click.secho(f"Package version is {ctx.release_version}") click.secho(f"Release tag is {ctx.release_tag}")
def determine_package_name_and_version(ctx: TagContext) -> None: click.secho("> Determining the package name and version.", fg="cyan") if "google-cloud-python" in ctx.upstream_repo: match = re.match(r"(?P<name>.+?)-(?P<version>\d+?\.\d+?(\.\d+)+)", ctx.release_tag) ctx.package_name = match.group("name") ctx.release_version = match.group("version") click.secho(f"Package name: {ctx.package_name}, " f"package version: {ctx.release_version}.") else: match = re.match(r"(.+)?(?P<version>\d+?\.\d+?(\.\d+)+)", ctx.release_tag) ctx.release_version = match.group("version") click.secho(f"Package version: {ctx.release_version}.")
def determine_package_name_and_version(ctx: TagContext) -> None: click.secho( "> Determining the package name and version from your release tag.", fg="cyan" ) match = re.match(r"^([a-z0-9-_]+)\/v(\d+.\d+.\d+)$", ctx.release_tag) ctx.package_name = match.group(1) ctx.release_version = match.group(2)
def determine_package_name_and_version(ctx: TagContext) -> None: click.secho("> Determining the package name and version.", fg="cyan") match = re.match(r"(?P<name>.+?)-(?P<version>\d+?\.\d+?(\.\d+)+)", ctx.release_tag) ctx.package_name = match.group("name") ctx.release_version = match.group("version") click.secho( f"Package name: {ctx.package_name}, " f"package version: {ctx.release_version}." )
def determine_release_tag(ctx: TagContext) -> None: click.secho("> Determining the release tag.", fg="cyan") head_ref = ctx.release_pr["head"]["ref"] click.secho(f"PR head ref is {head_ref}") match = re.match(r"^release-([a-z-]+)-v(\d\.\d.\d)$", head_ref) if match is not None: ctx.package_name = match.group(1) ctx.release_version = match.group(2) ctx.release_tag = f"{ctx.package_name}/v{ctx.release_version}" else: click.secho( "I couldn't determine what the release tag should be from the PR's" f"head ref {head_ref}.", fg="red", ) ctx.release_tag = click.prompt( "What should the release tag be (for example, google-cloud-storage/v1.2.3)?" ) determine_package_name_and_version(ctx) click.secho(f"Package name is {ctx.package_name}") click.secho(f"Package version is {ctx.release_version}") click.secho(f"Release tag is {ctx.release_tag}")
def determine_package_version(ctx: TagContext) -> None: click.secho("> Determining the package version.", fg="cyan") match = re.match(r"(?P<version>v?\d+\.\d+\.\d+)", ctx.release_tag) ctx.release_version = match.group("version") click.secho(f"package version: {ctx.release_version}.")
def determine_package_name_and_version(ctx: TagContext) -> None: click.secho("> Determining the release version.", fg="cyan") match = re.match(r"v(\d+\.\d+\.\d+)", ctx.release_tag) ctx.release_version = match.group(1) click.secho(f"Package version: {ctx.release_version}.")
def determine_package_version(ctx: TagContext) -> None: click.secho("> Determining the package version.", fg="cyan") # strip the leading 'v' from the tag ctx.release_version = re.sub(r"^v", "", ctx.release_tag) click.secho(f"Package version: {ctx.release_version}.")