Bifurcaciones y Liberaciones
Bifurcaciones
En general, nuestro manejo de las ramas es el descrito en Un modelo de bifurcación de líneal principal estable para Git. Una diferencia es que evitamos el rebase rebase
, y en su lugar fusionamos merge
la rama base en la rama de trabajo actual. Esto ayuda a evitar empujes push
forzados y conflictos.
Liberaciones
- Para una versión mayo
major release
: crea una nueva ramarelease/v0.x
- Para una versión menor
minor release
: selecciona los cambios deseados en la ramarelease/v0.x
- Hacer una versión beta
beta
o candidatarelease candidate
condocker/prod/deploy.sh
- Hacer lo mismo para
lemmy-ui
:./deploy.sh 0.x.0-rc-x
- Despliega en las instancias de prueba de la federación
- Mantener una instancia en la última versión estable para probar la compatibilidad de la federación (automatizar esto con ansible)
ansible-playbook -i federation playbooks/site.yml --vault-password-file vault_pass -e rc_version=0.x.0-rc.x
- Prueba que todo funciona como se espera, haz nuevas versiones beta/rc si es necesario
- Despliega en lemmy.ml, para descubrir los problemas restantes
- Si todo ha ido bien, haz la versión oficial
0.x.0
condocker/prod/deploy.sh
- Anuncia el lanzamiento en Lemmy, Matrix, Mastodon