$ ps-lando
Referencia

Flags

Referencia completa de cada flag de ps-lando en v1.0, más exit codes y la tabla v0.x → v1 de eliminadas.

Cada flag aceptada por ps-lando v1.0, agrupada por comando. Las flags eliminadas en 0.x se listan al final con sus reemplazos. Los exit codes se documentan en la tabla Exit codes — la CLI usa el rango contiguo 64–82 para categorías de error spec'd en v1 (mirror de Info-Zip 82 + base 64 de sysexits.h).

Flags de create

Básico

FlagTipoDefaultDesdeDescripción
-y, --yesboolfalse0.1No interactivo, acepta defaults. CI-friendly.
--ps-version=<v>string(picker)0.3Tag de PrestaShop (p. ej. 8.2.5, 9.1.0). Se salta el picker. Alias legacy --ps.
--ps-zip=<path>string(descarga)0.3Usa un zip de PS pre-descargado. Salta la red.
-z, --zips=<dir>stringcwd0.1Carpeta con zips de tema + módulos.
--hummingbird-buildboolfalse0.4Tras instalar, compila assets de Hummingbird 2.0 vía un contenedor node:20.

Selección de tema y preset (v1.0+)

FlagTipoDefaultDesdeDescripción
--theme=<name|path|none>string(prompt)1.0Nombre de tema (matchea un <name> de theme.yml / theme.xml en zips del cwd) o ruta .zip. --theme=none descarta el deployment del tema entero. Salta el prompt select interactivo.
--preset=<name>string (repetible)(binding por nombre de tema)1.0Built-in (panda, none) o ruta relativa (./presets/foo.ts). Repite para apilar. Por defecto, un preset cuyo nombre coincida con el nombre del tema seleccionado se activa (p. ej. elegir panda activa el preset panda incluido).
--no-presetboolfalse1.0Desactiva todos los presets — anula el binding por nombre de tema de arriba.
--force-overwrite-themeboolfalse1.0Permite sobrescribir un themes/<name>/ existente.
--allow-incompat-themeboolfalse1.0Salta la verificación de <ps_versions_compliancy>.
--strict-compatboolfalse1.0Promueve un warning de compat a error fatal (exit 76).

Selección de módulos

FlagTipoDefaultDesdeDescripción
--exclude=<glob>string (repetible)[]1.0Glob picomatch, case-insensitive. Compone con --only. Vacío termina con exit 64.
--only=<glob>string (repetible)[]0.5Instala SOLO módulos que matcheen el glob. Compone con --exclude (intersección).
--no-install-modulesboolfalse0.1Salta el batch install al final de create. Los módulos sí se copian.
--no-copy-skippedboolfalse0.5.2Junto a --exclude / --only, también excluye los módulos filtrados del paso de copia.
--allow-stock-overwriteboolfalse1.0Permite sobrescribir módulos stock de PS.
--sequentialboolfalse0.4.2Instala módulos uno a uno (default es paralelo concurrencia 3).

Hooks y recipes

FlagTipoDefaultDesdeDescripción
--recipes=<names>string""0.4Recipes incluidas separadas por coma. Usado en modo -y.
--on-hook-failure=<fail|continue>enumcontinue0.4Si un hook fallido aborta el resto del pipeline.

Config y cache

FlagTipoDefaultDesdeDescripción
--config=<path>string(cosmiconfig)1.0Salta el descubrimiento de cosmiconfig; carga ese archivo directamente.
--no-cacheboolfalse1.0Salta lectura/escritura de .pslando-cache.json para esta ejecución.
--log-format=<text|json>enumtext1.0Mirror de la env PSLANDO_LOG_FORMAT. JSON pone decisiones en stderr una por línea.
--quietboolfalse0.4Suprime logs de info / decisión en stderr.
--verboseboolfalse0.4Anota cada línea de decisión resuelta con su source:.
--help, --versionbool0.1Estándar.

Flags de install-modules

install-modules (alias im) reusa --exclude, --only, --no-copy-skipped, --sequential, --allow-stock-overwrite, --config, --log-format, --quiet, --verbose de create más:

FlagTipoDefaultDesdeDescripción
--dry-runboolfalse0.4Previsualiza el orden de install sin invocar PrestaShop.
--include=<prefix>string0.1Solo instala módulos cuyo nombre empiece por <prefix> (legacy; considera --only=<prefix>*).

Flags de init (1.0+)

ps-lando init es el asistente interactivo. Recorre 7 prompts (clack) y escribe pslando.config.json, init-scripts/01-example.sh y una entrada en .gitignore. Mira Referencia → Config y Referencia → Comandos.

FlagTipoDefaultDesdeDescripción
--yesboolfalse1.0Salta todos los prompts, escribe defaults.
--forceboolfalse1.0Sobrescribe pslando.config.* existente. Sin --force, rechaza con exit 82.

Flags de cache clear (1.0+)

ps-lando cache clear borra el cache local del plan (.pslando-cache.json).

FlagTipoDefaultDesdeDescripción
-y, --yesboolfalse1.0Salta el prompt de confirmación.

db reset / db dump / db restore / doctor / activate-theme

Estas flags no cambian en v1.0:

  • db reset: -y, --yes
  • db dump: --with-files (empaqueta SQL + img/ + themes/<active>/ en .tar.gz)
  • db restore: -y, --yes
  • doctor: --fix
  • activate-theme: --force-sql

Flags eliminadas (BREAKING — v1.0.0)

Las cuatro flags --skip-* de 0.5.x se eliminaron. Usarlas ahora termina con exit 64 (UsageError) y un hint de migración en stderr. Reemplazos:

EliminadaReemplazo
--skip-easybuilder--exclude=steasybuilder* (o modules.exclude en pslando.config.json)
--skip-blog--exclude=stblog* (o vía configuración de grupos del preset panda)
--skip-socialPatrones --exclude=<glob> o config de preset
--skip-marketingPatrones --exclude=<glob> o config de preset
--skip <list>--exclude=<glob> (también funcionan patrones por-nombre)

Mira la guía Migración desde 0.x para recetas de grep que encuentran flags antiguas en scripts de CI.

Exclusiones mutuas

  • --no-preset no se combina con --preset=<name> (exit 64).
  • --exclude= (vacío) termina con exit 64 — pasa al menos un patrón no vacío.

Exit codes

ps-lando v1.0 usa estos exit codes (rango contiguo 64–82 para categorías spec'd):

CódigoNombreTrigger
0OKÉxito.
1GenericErrorCatch-all (error desconocido / excepción JS).
2AmbiguousTheme2+ temas detectados, no-TTY, sin --theme=.
64UsageErrorFlag desconocida / eliminada, valor malo, --exclude= vacío.
65SchemaValidationErrorpslando.config.* no pasa el schema zod.
66ConfigNotFound--config=<path> pasado pero archivo ausente.
67PresetNotFound--preset=<name> no resuelve a nada.
68CorruptZipunzip -l falla en un zip detectado.
69EncryptedZipZip cifrado (exit 82 de Info-Zip).
70UnknownZipShapeEl zip no tiene ni theme.yml/.xml ni <name>/<name>.php en la raíz.
71DependencyResolutionErrorCiclo o falta de dependencia entre módulos / presets.
72HookExecutionErrorHook con exit no-cero Y --on-hook-failure=fail.
73CacheCorruption.pslando-cache.json malformado o ilegible.
74NetworkErrorFallo de descarga PS / chequeo del registry npm tras reintentos.
75LandoStartFailedlando start retornó no-cero.
76ThemeIncompatibleMismatch de <ps_versions_compliancy> Y --strict-compat.
77ThemeOverwriteRefusedthemes/<name>/ existe Y sin --force-overwrite-theme.
78StockModuleOverwriteUn zip de módulo aplastaría un módulo stock de PS Y sin --allow-stock-overwrite.
79DiskFullEscritura falló con ENOSPC.
80PermissionDeniedPermiso de filesystem (EACCES / EPERM).
81InitCancelledEl usuario pulsó Ctrl-C durante ps-lando init. (Tratado como 0 en algunos entornos — ver spec §1.5.)
82InitConfigExistspslando.config.* ya existe Y sin --force.

Para definiciones completas de trigger y acción sugerida del usuario, mira la tabla del spec.

Defaults en modo -y

Cuando se pasa -y sin otras flags:

CampoDefault
Nombre del proyectobasename del cwd
Versión PSla estable más reciente del manifest (actualmente 9.1.0)
Tema1 detectado → auto-seleccionado. 2+ detectados → exit 2 (AmbiguousThemeError) — pasa --theme=<name>. 0 detectados → install vanilla (classic / hummingbird incluidos).
Presetse activa si su nombre coincide con el nombre del tema seleccionado (p. ej. panda → preset panda incluido). --no-preset lo desactiva.
Móduloscada zip de módulo detectado en cwd queda auto-marcado (= instalado). Filtra con --exclude=<glob> / --only=<glob>.
PHP8.2 (PS 9) o 8.1 (PS 8)
Base de datosMySQL
ExtrasphpMyAdmin + MailHog
Tema hijosí, llamado <project>_child
Email adminadmin@example.com
Password adminsandbox1234
Localees / es / Europe/Madrid

Siguientes pasos

On this page