Este workflow de publicación entrega una App Store Docker mediante alojamiento estático para que puedan consumirla los servidores domésticos ZimaOS y los homelabs.
Esta página documenta .github/workflows/release-store.yml, el workflow de publicación utilizado para releases etiquetadas.
Objetivo
Toma la salida preparada para una release y la publica en los destinos públicos de entrega.
Disparadores
- push de etiquetas que coincidan con
v* - ejecución manual mediante
workflow_dispatch
Las ejecuciones manuales pueden definir purge_only para actualizar los archivos modificados por el despliegue más reciente en gh-pages sin volver a compilar ni desplegar la tienda.
Etapas principales
- Obtener el código fuente del repositorio.
- Restaurar las cachés de compilación.
- Compilar
dist/del protocolo v2. - Compilar la salida zip v1 heredada.
- Crear los paquetes de la release.
- Subir los artefactos e informes de la release.
- Guardar las cachés de compilación.
- Escribir el resumen de la release.
- Desplegar
dist/engh-pages. - Recopilar los archivos modificados por el despliegue y actualizar sus entradas de caché en jsDelivr.
- Crear una GitHub Release con los paquetes adjuntos.
La actualización de caché se ejecuta después del despliegue en gh-pages. Compara las revisiones anterior y actual de gh-pages, incluye siempre los puntos de entrada de la tienda y envía las rutas a jsDelivr por lotes. El script consulta el resultado de la purga, reintenta fallos HTTP transitorios y falla de forma visible si jsDelivr informa de limitación o de una purga no satisfactoria. Una comprobación posterior compara los hashes de la respuesta de origen y de la CDN para que una solicitud de purga aceptada no se confunda con una caché realmente actualizada.
Salidas publicadas
Actualmente el workflow publica o adjunta:
- salida estática
dist/engh-pagespara el protocolo v2 main.zippara compatibilidad con v1- paquetes zip de la release para descargar
- informes JSON de compilación para solucionar problemas
Por qué es importante
Este workflow es la referencia más cercana si quieres que un repositorio de tienda de terceros siga el proceso de publicación oficial.
Muestra cómo el repositorio oficial separa:
- los artefactos generados durante la compilación
- el despliegue durante la publicación
- los archivos adjuntos a la release para descarga manual
Workflow de compilación relacionado
El workflow de compilación que no publica se documenta en Workflow de compilación.
Si estás diseñando un repositorio externo, consulta Reutilizar las acciones oficiales para conocer el proceso recomendado.