termcourse: leer 'n publicar en instancias de Discourse desde la terminal

Para que puedas iniciar sesión rápidamente en múltiples sitios (obviamente una sesión a la vez por pestaña), he realizado las siguientes mejoras:

Mejoras en la autenticación y configuración de termcourse

  • La ruta de inicio de sesión predeterminada ahora es nombre de usuario/contraseña.
  • Ya no es necesario incluir https:// - esto es opcional
  • Los campos de inicio de sesión faltantes se solicitan de forma interactiva (por ejemplo: nombre de usuario conocido, contraseña faltante).
  • La ayuda de la CLI incluye variables de entorno principales y ubicaciones de archivos de registro de depuración.

Comportamiento de las credenciales y las variables de entorno

  • Admite un archivo de credenciales mapeado por host con orden de búsqueda:
    1. TERMCOURSE_CREDENTIALS_FILE (si está configurado)
    2. ./credentials.yml
    3. ~/.config/termcourse/credentials.yml
  • Precedencia de autenticación:
    1. Indicadores (flags) de la CLI
    2. Credenciales de host desde YAML
    3. Variables de entorno DISCOURSE_* genéricas
    4. Solicitud interactiva
  • Para la autenticación: se solicitan los valores faltantes de nombre de usuario/contraseña para el inicio de sesión.
  • Para la autenticación de API, tanto el nombre de usuario de la API como la clave deben resolverse en valores no vacíos.

Depuración

  • Depuración HTTP/autenticación: TERMCOURSE_HTTP_DEBUG=1 → /tmp/termcourse_http_debug.txt
  • Depuración de renderizado de UI: TERMCOURSE_DEBUG=1 → /tmp/termcourse_debug.txt

Higiene del repositorio

  • Se añadieron credentials.example.yml y .env.example con ejemplos alineados.
  • Se añadieron entradas a .gitignore para archivos secretos locales:
    • .env
    • credentials.yml
2 Me gusta