Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implementación de Semantic Versioning para gestionar releases y versiones estables #51

Open
MranDvX opened this issue Jul 10, 2024 · 1 comment

Comments

@MranDvX
Copy link
Contributor

MranDvX commented Jul 10, 2024

Propongo la implementación de Semantic Versioning (SemVer) para gestionar las versiones y releases de nuestro proyecto. SemVer nos permitirá mantener un control claro y consistente de las versiones, facilitando la identificación de cambios, mejoras y corrección de errores. Además, ayudará a volver a una versión estable en caso de que surjan problemas con nuevas releases.

Objetivos:

  1. Implementar Semantic Versioning:

    • Seguir la convención MAJOR.MINOR.PATCH para versionado.
    • Documentar las reglas de versionado en el README.md o en una sección específica de la documentación.
  2. Automatización de Releases:

    • Configurar herramientas como semantic-release para automatizar la creación de versiones y releases.
    • Integrar con nuestro CI/CD para que los releases se realicen automáticamente después de pasar las pruebas.
  3. Manejo de Errores:

    • Establecer una estrategia para retroceder a la última versión estable en caso de errores críticos en nuevas releases.
    • Documentar el procedimiento para realizar un rollback de manera eficiente.

Beneficios:

  • Mejora la gestión y el control de las versiones del proyecto.
  • Facilita la identificación de cambios significativos y retrocompatibilidad.
  • Automatiza el proceso de releases, reduciendo errores humanos.
  • Proporciona una manera clara de volver a una versión estable en caso de problemas.

Tareas:

  1. Configurar semantic-release en el proyecto.
  2. Actualizar la documentación con las reglas de versionado y el proceso de releases.
  3. Integrar el versionado en el pipeline de CI/CD.
  4. Realizar pruebas de la nueva configuración y documentar cualquier inconveniente.

Referencias:

@MranDvX
Copy link
Contributor Author

MranDvX commented Jul 10, 2024

En conversación con @JamiltonQuintero por el momento, los releases se harán de forma manual para evitar posibles costos asociados con la cuota free de CI/CD. Evaluaremos la automatización con semantic-release en el futuro para simplificar el proceso una vez confirmemos que no excederemos la cuota gratuita.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: No status
Development

No branches or pull requests

1 participant