Los responsables de tiendas de terceros pueden automatizar una App Store Docker self-hosted sin copiar todo el repositorio oficial.
Esta página muestra la forma recomendada de reutilizar el proceso oficial de compilación y publicación.
Ruta de reutilización recomendada
Para repositorios externos, utiliza preferentemente estas capas:
- Usa la acción pública de compilación
IceWhaleTech/build-appstore-action. - Mantén en el workflow de tu repositorio la responsabilidad de validar, subir artefactos y publicar.
- Trata las acciones auxiliares de
.github/actions/de este repositorio como ejemplos o wrappers locales, salvo que decidas incorporarlas deliberadamente.
Objetivo de cada acción
IceWhaleTech/build-appstore-action: motor público de compilación v2. Úsalo para generardist/desde el workflow de tu repositorio..github/actions/build-store-v2: wrapper local del repositorio para la acción pública..github/actions/build-store-v1: empaqueta el artefacto heredadodist/store/main.zippara clientes antiguos..github/actions/validate-compose: comprueba los metadatos Compose antes de compilar..github/actions/write-job-summary: escribe informes JSON estructurados en el resumen de GitHub Actions..github/actions/render-report: convierte informes JSON en artefactos HTML independientes.
División recomendada de workflows
El repositorio oficial separa las responsabilidades de esta forma:
validator.yml: valida la entrada Compose y confirma que la compilación v2 termina correctamente.release.yml: compiladist/v2 ymain.zipv1, sube artefactos y guarda cachés.release-store.yml: publica releases etiquetadas, despliegadist/engh-pagesy crea un paquete de GitHub Release.
Para la mayoría de las tiendas de terceros, usa la misma división:
- un workflow de validación para PR
- un workflow de compilación para artefactos reutilizables
- un workflow de publicación para etiquetas o releases
Workflow mínimo de validación
name: Validate Store |
Workflow mínimo de publicación
name: Release Store |
Nota de compatibilidad
Si todavía admites clientes v1 heredados, añade un paso que también produzca dist/store/main.zip. El repositorio oficial lo hace mediante .github/actions/build-store-v1 después de que termine correctamente la compilación v2.
Compilaciones locales
Utiliza ./scripts/build_dist.sh cuando quieras que el desarrollo local se comporte de forma similar a la acción de compilación oficial. Para la CI real de una tienda de terceros, utiliza directamente GitHub Actions.