Referencia CLI

whatalo deploy

Compila y despliega una nueva versión de tu plugin en el marketplace de Whatalo.

Sintaxis

whatalo deploy [opciones]

Opciones

FlagTipoDescripción
--forcebooleanOmitir la confirmación (requerido en CI/CD)
--no-buildbooleanOmitir el paso de compilación
--message <msg>stringNota de cambios o release note para esta versión
--set-version <ver>stringSobreescribir la versión (por defecto: lee de package.json)
--jsonbooleanSalida en formato JSON
--portal-url <url>stringURL del Portal del Desarrollador

Flujo de despliegue

  1. Verificar auth — Verifica tu sesión. A diferencia de whatalo dev, no hay auto-login; ejecuta whatalo login si tu sesión expiró.
  2. Leer config — Carga whatalo.app.toml del directorio actual.
  3. Compilar — Ejecuta el comando definido en build.build_command en tu config. Timeout: 120 segundos. El CLI verifica que output_dir exista después de la compilación.
  4. Determinar versión — Usa --set-version si se proporcionó, de lo contrario lee el campo version de package.json.
  5. Confirmar — Muestra un resumen y pide confirmación (se omite con --force o --json).
  6. Desplegar — Envía POST /api/plugins/{plugin_id}/deploy con la versión, manifiesto y mensaje.

Reglas de versión

  • Debe ser una cadena semver válida (ej: 1.0.0, 1.2.0-beta.1)
  • No puede ser inferior a la versión actualmente desplegada

Estado después del despliegue

El despliegue no publica automáticamente tu plugin. La transición de estado depende del estado actual:

Estado actualEstado después del despliegue
draftdraft (enviar via dashboard cuando estés listo)
approvedpending_review (los cambios requieren nueva revisión)
rejectedpending_review

Uso en CI/CD

En entornos no interactivos (GitHub Actions, Railway, etc.), siempre usa --force:

whatalo deploy --force --message "Corrección de sincronización de pedidos"

Sin --force, el CLI quedará esperando una confirmación que nunca llegará en un entorno CI.

Ejemplo de paso en GitHub Actions

- name: Deploy plugin
  run: whatalo deploy --force --message "${{ github.event.head_commit.message }}"
  env:
    WHATALO_DEVELOPER_PORTAL_URL: ${{ secrets.PORTAL_URL }}

Ejemplos

Desplegar con mensaje y omitir build (ya compilado):

whatalo deploy --no-build --message "Agregar exportación masiva de pedidos"

Desplegar una versión específica:

whatalo deploy --set-version 2.0.0 --message "Reescritura mayor — nueva interfaz"

Desplegar con salida JSON para scripting:

whatalo deploy --force --json

Comandos relacionados

On this page