refactor: use new base.io_ methods

This commit is contained in:
jt
2026-07-16 22:08:46 -03:00
parent febd18c3b3
commit 0120faac9e
+22 -20
View File
@@ -2,7 +2,7 @@ import typer
from git_flow import FLOWCONFIG_FILENAME, FLOWCONFIG_VERSION, GitFlowError from git_flow import FLOWCONFIG_FILENAME, FLOWCONFIG_VERSION, GitFlowError
from git_flow.git import Git from git_flow.git import Git
from git_flow.command.base import * import git_flow.command.base as base
app = typer.Typer() app = typer.Typer()
@@ -36,32 +36,32 @@ def init():
def _ensure_is_repository(): def _ensure_is_repository():
if not Git.is_repository(): if not Git.is_repository():
warning("El directorio actual no es un repositorio.") base.io_warning("El directorio actual no es un repositorio.")
if not confirm("¿Desea inicializarlo?"): if not base.io_confirm("¿Desea inicializarlo?"):
raise GitFlowError("No se puede continuar sin inicializar el repositorio") raise GitFlowError("No se puede continuar sin inicializar el repositorio")
Git("init").exec() Git("init").exec()
def _ensure_not_already_initialized(): def _ensure_not_already_initialized():
if not flowconfig: if not base.flowconfig:
return return
elif flowconfig.get("flow.initialized") == "true": elif base.flowconfig.get("flow.initialized") == "true":
raise GitFlowError("El repositorio ya fue inicializado para usar git-flow") raise GitFlowError("El repositorio ya fue inicializado para usar git-flow")
else: else:
raise GitFlowError("Valor de 'flow.initialized' es inválido") raise GitFlowError("Valor de 'flow.initialized' es inválido")
def _setup_flow_branches(): def _setup_flow_branches():
panel( base.io_info(
"Configuración de entornos",
"""Ingrese las ramas que representan los entornos de deploy del proyecto """Ingrese las ramas que representan los entornos de deploy del proyecto
en orden creciente de cercanía al entorno productivo, y separados por en orden creciente de cercanía al entorno productivo, y separados por
coma. Por ejemplo: "dev, test, prod".""", coma. Por ejemplo: "dev, test, prod".""",
title = "Configuración de entornos"
) )
branches = list(map(lambda b: b.strip(), prompt("Ramas", "main").split(","))) branches = list(map(lambda b: b.strip(), base.io_prompt("Ramas", "main").split(",")))
if not all(branches): if not all(branches):
raise GitFlowError("No puede ingresar una rama vacia") raise GitFlowError("No puede ingresar una rama vacia")
@@ -70,21 +70,23 @@ coma. Por ejemplo: "dev, test, prod".""",
def _setup_flow_remote(): def _setup_flow_remote():
panel( base.io_info(
"Configuración de remoto", """Configurar un repositorio remoto le permite generar PRs automáticamente para el
"Puede configurar un repositorio remoto para generar PRs automáticamente", entorno correspondiente. Deberá seleccionar uno de los remotos actuales, o crear
uno nuevo.""",
title = "Configuración de remoto",
) )
remote = None remote = None
remote_type = None remote_type = None
if confirm("¿Configurar repositorio remoto?"): if base.io_confirm("¿Configurar repositorio remoto?"):
remotes = Git("remote").lines(print="Listando remotos disponibles") remotes = Git("remote").lines(print="Listando remotos disponibles")
if not remotes: if not remotes:
info("No tiene ningún repositorio remoto, se creará uno.") base.io_info("No tiene ningún repositorio remoto, se creará uno.")
url = prompt( url = base.io_prompt(
"Ingrese la URL del repositorio (e.g. https://github.com/user/repo.git)", "Ingrese la URL del repositorio (e.g. https://github.com/user/repo.git)",
persistent=True, persistent=True,
) )
@@ -93,10 +95,10 @@ def _setup_flow_remote():
elif len(remotes) == 1: elif len(remotes) == 1:
remote = remotes[0] remote = remotes[0]
else: else:
info("Tiene más de un remoto, seleccione el que va a utilizar.") base.io_info("Tiene más de un remoto, seleccione el que va a utilizar.")
remote = choice("Remoto", remotes) remote = base.io_choice("Remoto", remotes)
remote_type = choice("Tipo de remoto:", ["bitbucket", "github", "gitea"]) remote_type = base.io_choice("Tipo de remoto:", ["bitbucket", "github", "gitea"])
return (remote, remote_type) return (remote, remote_type)
@@ -105,10 +107,10 @@ def _ensure_all_flow_branches_exist(branches: list[str], remote: str | None):
existing_branches = Git.get_branches() existing_branches = Git.get_branches()
if not all(map(lambda b: b in existing_branches, branches)): if not all(map(lambda b: b in existing_branches, branches)):
warning("Algunas de las ramas de entornos expecificadas no existen.") base.io_warning("Algunas de las ramas de entornos expecificadas no existen.")
info("Debe indicar sobre que rama se crearán las ramas de entorno.") base.io_info("Debe indicar sobre que rama se crearán las ramas de entorno.")
target_branch = choice("Rama", existing_branches) target_branch = base.io_choice("Rama", existing_branches)
for branch in branches: for branch in branches:
if branch not in existing_branches: if branch not in existing_branches: