seed: cuentas existentes como Produccion; htpasswd en sitio; cabecera indigo

This commit is contained in:
Leopoldo Rodríguez 2026-10-13 21:27:07 -06:00
parent 84a171ca73
commit 591d70a0db

View File

@ -44,7 +44,16 @@ EQUIPO = [
("aldair", "Aldair", "Fabricación / ensamble de tarjetas (rol por confirmar)", "fabricacion", ""),
("gibranlp", "Gibran", "Software htracker (monitor)", "software", ""),
("claude", "Claude", "Asistente de ingeniería", "asistente", ""),
# Cuentas que ya existían en el sitio (14-oct): Leo las asigna todas a Producción.
("abraham", "Abraham", "Producción", "produccion", ""),
("eduardo", "Eduardo", "Producción", "produccion", ""),
("jacobo", "Jacobo", "Producción", "produccion", ""),
("jose", "José", "Producción", "produccion", ""),
("juan", "Juan", "Producción", "produccion", ""),
]
# Cualquier otra cuenta del htpasswd que no tenga miembro se da de alta como Producción (regla de Leo, 14-oct).
# Excepciones: cuentas que ya no son del equipo (no se crean como miembro).
LOGINS_OMITIDOS = {"luz"} # luz = cuenta duplicada de michelle (se borra con htpasswd -D)
SITIOS = [
{"id": "icave", "nombre": "ICAVE", "cliente": "Hutchison Ports", "ubicacion": "Veracruz, Ver.",
@ -216,7 +225,30 @@ def sembrar_equipo(u):
t["historial"] = [{"quien": u, "cuando": t["creado_en"], "cambio": "miembro sembrado (seed_1013)"}]
backend._guardar_miembro(t)
n += 1
return f"equipo: {n} miembros creados, {len(EQUIPO) - n} ya existían (sin crear accesos)"
# cuentas del sitio sin miembro -> Producción
extra = 0
try:
lineas = backend._leer_htpasswd() or []
except Exception:
lineas = []
conocidos = {rid for rid, *_ in EQUIPO}
for l in lineas:
if ":" not in l:
continue
login = l.split(":", 1)[0].strip().lower()
if not login or login in conocidos or login in LOGINS_OMITIDOS:
continue
if os.path.isfile(backend._ruta_registro(backend.EQUIPO_DIR, login)):
continue
t, err = backend._miembro_valido({"nombre": login.capitalize(), "rol": "Producción", "area": "produccion", "correo": "", "activo": True})
if err:
print(" cuenta", login, "->", err); continue
t["id"] = login
t.update(marca(u))
t["historial"] = [{"quien": u, "cuando": t["creado_en"], "cambio": "miembro creado desde la cuenta del sitio (seed_1013; área Producción por regla de Leo)"}]
backend._guardar_miembro(t)
extra += 1
return f"equipo: {n} miembros creados, {len(EQUIPO) - n} ya existían, {extra} cuentas del sitio dadas de alta como Producción (sin crear accesos)"
def completar_responsables(u):