Hace unos meses me encontré repitiendo pequeñas variaciones de los mismos comandos día tras día. Un script tradicional no era suficiente para mis propósitos, dado que parte del comando debía ejecutarse remotamente a través de SSH, dejando la sesión de SSH abierta.
Así que decidí liarme la manta a la cabeza y crear una aplicación de consola que permitiera automatizar estos procesos, y ya puestos, aprender algo nuevo de Python. El resultado final es una aplicación de modo texto, con funcionalidades tan diversas como:
Y como muestra, un pantallazo:
El objetivo de la charla es dar a conocer un poco de las librerías utilizadas, así como de su integración:
ply
para el parseo de sintaxis (lexer y parser)prompt_toolkit
para la interfaz gráficaasyncio
para la ejecución asíncrona de tareasasyncssh
para la conexión a servidores por SSH