Editar archivos en un bot en producción es rápido y de vez en cuando desastroso. La costumbre de abajo cuesta un minuto y convierte un cambio malo en una vuelta atrás de treinta segundos en lugar de una tarde.
Qué hacer
- Prueba en local primero
Ejecuta el cambio en tu propia máquina contra un bot de pruebas en un servidor de pruebas. Casi todos los problemas de despliegue son fallos que habrías pillado en diez segundos en local.
- Copia los archivos que vas a reemplazar
Antes de subir, duplica la versión actual.
index.jspasa a serindex.js.bak. Esa es tu vuelta atrás, y usarla es un clic. - Sube y luego reinicia
Un proceso corriendo sigue ejecutando el código que cargó al arrancar. Editar un archivo no cambia nada hasta el reinicio, y eso pilla a la gente pensando que el cambio no funcionó.
- Mira la consola durante el primer minuto
Casi todos los fallos se anuncian al momento. Quedarte sesenta segundos es la diferencia entre enterarte ahora y enterarte por un usuario.
- Prueba justo lo que cambiaste
No solo que el bot esté en línea. En línea y roto se ve idéntico a en línea y bien desde la lista de miembros.
Una aplicación aparte con su propio token, invitada solo a un servidor privado. No cuesta nada, puede correr en tu portátil, y significa que nunca depuras delante de público.
Si tu bot está escribiendo un archivo de datos cuando lo sobrescribes, puedes perder el archivo. Párralo, cámbialo, arráncalo, en ese orden, para cualquier cosa que toque datos.
Preguntas que esto levanta
- ¿Puedo desplegar con git?
- Sí, si el entorno de tu bot tiene git disponible. Haces pull y reinicias. El flujo es el mismo; el paso de copia pasa a ser un commit.
- ¿Tengo que reinstalar dependencias?
- Solo si cambió el manifiesto. Añadir una librería es editar
package.jsony reiniciar. - ¿Van a notar el reinicio los usuarios?
- El bot se cae unos segundos. Los comandos que se manden en esa ventana fallan, no se encolan.