Esta es la plantilla del paquete que usamos internamente al crear nuevas herramientas basadas en Python CLI. Tiene toda la funcionalidad básica y los flujos de trabajo necesarios para crear, construir y publicar un nuevo paquete para PYPI.
Este paquete proporciona una utilidad de línea de comandos para procesar y manejar varias tareas utilizando un conjunto de argumentos y configuraciones predefinidas. El proyecto tiene como objetivo servir como línea de base para desarrollar aplicaciones de línea de comandos similares.
Incluye características como análisis de argumentos, gestión de configuración y una estructura modular para facilitar el desarrollo de código escalable y mantenible.
También proporcionamos otras 2 plantillas que utilizamos.
argparse .Para instalar el paquete CLI, clone el repositorio y navegue al directorio del proyecto:
git clone https://github.com/DevelopersToolbox/template-package-cli.git
cd template-package-cliSe recomienda utilizar un entorno virtual para administrar las dependencias. Puede crear y activar un entorno virtual utilizando los siguientes comandos:
python -m venv venv
source venv/bin/activate # On Windows, use `venvScriptsactivate`Instale las dependencias requeridas:
pip install -r requirements.txt Para ejecutar el paquete CLI, ejecute la función main del script principal:
python -m wolfsoftware.template_package_cli.main --required < value >La aplicación admite varios argumentos de línea de comandos:
-h, --help : Mostrar mensaje de ayuda y salida.-d, --debug : habilitar el modo de depuración para la salida detallada.-v, --verbose : habilita la salida verbosa para mostrar los resultados del escaneo a medida que entran.-V, --version : Muestre el número de versión y la salida del programa.-i, --optional-integer : un argumento entero opcional (predeterminado: 2).-s, --optional-string : un argumento de cadena opcional (predeterminado: "yo").-r, --required : un argumento de cadena requerido.Ejemplo de uso:
python -m wolfsoftware.template_package_cli.main -r " required_value " -i 10 -s " optional_string " El proyecto está organizado de la siguiente manera:
template-package-cli/
├── wolfsoftware/
│ └── template_package_cli/
│ ├── __init__.py
│ ├── cli.py
│ ├── config.py
│ ├── exceptions.py
│ ├── globals.py
│ └── main.py
├── README.md
├── setup.py
└── requirements.txtwolfsoftware/template_package_cli : contiene los módulos principales de la aplicación.cli.py : maneja los argumentos de línea de comandos y el flujo del programa principal.config.py : maneja la creación de configuración desde argumentos de línea de comandos.exceptions.py : maneja las excepciones personalizadas.globals.py : define las constantes globales utilizadas en toda la aplicación.main.py : el script principal que orquesta el análisis de argumentos y la ejecución del programa.requirements.txt : enumera las dependencias requeridas para el proyecto.README.md : el archivo que está leyendo actualmente.