diff --git a/PLAN.md b/PLAN.md index 1d64ca5..4058c57 100644 --- a/PLAN.md +++ b/PLAN.md @@ -4,12 +4,13 @@ Objetivo: sustituir Radicale (binario + systemd en un contenedor) por davcloud sin que DAVx⁵, Thunderbird, iOS ni las extensiones web (opencloud-agenda, opencloud-contacts) noten la diferencia. -Estado al 18-Oct-2026: **fases 0-4 completadas** (issues #1-#9 y #21 cerrados; -davcloud es el servidor DAV de producción desde el 17-Oct) y **fase 5 en curso** +Estado al 18-Oct-2026: **fases 0-4 y 6 completadas** (issues #1-#9, #21 y #43 +cerrados; davcloud es el servidor DAV de producción desde el 17-Oct y la +release `v0.2.0` ya está publicada con binarios e imagen) y **fase 5 en curso** (soak en marcha; el **drill de rollback pasó el 18-Oct-2026**, issue #22). El despliegue propio **no usa Docker**: binario estático + systemd (ver `deploy/README.md`); la imagen de contenedor existe para quien prefiera ese -camino (fase 6). Repo público desde el 18-Oct-2026, licencia AGPL-3.0. +camino. Repo público desde el 18-Oct-2026, licencia AGPL-3.0. ## Hecho @@ -59,15 +60,15 @@ camino (fase 6). Repo público desde el 18-Oct-2026, licencia AGPL-3.0. patológicas (un `calendar-query` `SECONDLY` que antes no terminaba en 25 s responde 207 en 0,0016 s). Desplegado en producción el mismo día, con el rechazo verificado en vivo. +- **Fase 6 - distribución** (issue #43, 18-Oct-2026): release `v0.2.0` con + binarios estáticos `linux/amd64` y `linux/arm64` (y su `sha256`) e imagen + multi-arch pública en `ghcr.io/gnacho/davcloud`, verificados descargando el + asset y tirando del registro sin credenciales. El `Dockerfile` ya no depende + de `go mod tidy` y sella la versión por build args; la CI construye la imagen + en cada push y cada PR. Versiones de `0.2` en `0.2`. ## Pendiente (issues) -- **#43 - Fase 6: distribución** (abierta el 18-Oct-2026): binarios - `linux/amd64` y `linux/arm64` por tag e imagen multi-arch en - `ghcr.io/gnacho/davcloud`, para que probarlo no exija toolchain. El - despliegue propio no cambia. Versiones de `0.2` en `0.2` (`v0.2.0`, - `v0.4.0`, ...). - - **#22 - Fase 5: soak + drill de rollback** (soak en curso desde el 17-Oct: davcloud es el único servidor DAV; el drill ya pasó el 18-Oct-2026, ver arriba). Queda el uso diario con datos reales y, solo entonces, retirar diff --git a/README.es.md b/README.es.md index 3d2ddad..37f9d86 100644 --- a/README.es.md +++ b/README.es.md @@ -217,10 +217,13 @@ otra vez, leyó todo lo escrito por davcloud (mismos UID y campos, mismas props de colección) y no tocó los ficheros, así que volver atrás es un cambio de servicio. El periodo de soak sigue en marcha, así que es software en desarrollo activo. La lista de fases y lo que queda está en -[PLAN.md](PLAN.md). Cubierto por 40 tests de Go y 10 de la web, CI en cada -push (test/lint/security/web) y un ensayo de migración contra una copia de un -volumen real de producción. Las limitaciones conocidas están seguidas como -issues: iMIP, compartición de calendarios, edición de recurrencias en la web. +[PLAN.md](PLAN.md). Las releases se publican desde tags `v*`: binarios +estáticos para `linux/amd64` y `linux/arm64` con su suma, y una imagen +multi-arch en `ghcr.io/gnacho/davcloud`. Cubierto por 40 tests de Go y 10 de la +web, CI en cada push (test, lint, security, web e imagen de contenedor) y un +ensayo de migración contra una copia de un volumen real de producción. Las +limitaciones conocidas están seguidas como issues: iMIP, compartición de +calendarios, edición de recurrencias en la web. ## Licencia diff --git a/README.md b/README.md index 6f3343b..bc562ef 100644 --- a/README.md +++ b/README.md @@ -207,10 +207,12 @@ again, read every item davcloud had written (same UIDs and fields, same collection properties) and left the files untouched, so going back is a service switch. The soak period is still running, so treat it as software in active development. The phase list and what is left are in -[PLAN.md](PLAN.md). Covered by 40 Go tests and 10 web tests, CI on every push -(test/lint/security/web), and a migration dry run against a copy of a real -production volume. Known limitations are tracked as issues: iMIP, calendar -sharing, recurrence editing in the web UI. +[PLAN.md](PLAN.md). Tagged releases are published from `v*` tags: static +binaries for `linux/amd64` and `linux/arm64` with their checksums, and a +multi-arch image at `ghcr.io/gnacho/davcloud`. Covered by 40 Go tests and 10 web +tests, CI on every push (test, lint, security, web, container image), and a +migration dry run against a copy of a real production volume. Known limitations +are tracked as issues: iMIP, calendar sharing, recurrence editing in the web UI. ## License