Configurer l'exportateur Node.js pour WordPress statique

Static Publisher utilise un CLI installé séparément, @smart-cloud/publisher-exporter, pour le crawl et le déploiement. Le plugin WordPress n'embarque ni Node.js, ni Playwright, ni l'arborescence source de l'exportateur.

Prérequis de l'hôte

L'hôte de l'exécuteur doit disposer de :

  • Node.js (la dernière version LTS est le socle recommandé),
  • des binaires de navigateur Playwright,
  • un accès au shell pour cron, CI ou des exécutions manuelles,
  • un accès au système de fichiers vers le répertoire runtime du plugin,
  • des identifiants AWS uniquement sur la machine qui effectue réellement les opérations de déploiement ou d'invalidation.

Installer l'exportateur

Installation globale

npm install -g @smart-cloud/publisher-exporter
publisher-exporter install-browsers

Installation locale du package

mkdir -p /opt/smartcloud/publisher-exporter
cd /opt/smartcloud/publisher-exporter
npm init -y
npm install @smart-cloud/publisher-exporter
npx @smart-cloud/publisher-exporter install-browsers

Si l'environnement de l'exécuteur est partagé entre plusieurs utilisateurs ou services, pointez Playwright vers un répertoire de navigateurs partagé avant l'étape d'installation :

export PLAYWRIGHT_BROWSERS_PATH=/var/lib/playwright-browsers
publisher-exporter install-browsers

Champs importants de l'administration WordPress

Dans l'interface d'administration Static Publisher :

  • définissez External exporter dir si vous voulez que les diagnostics côté PHP vérifient l'installation du CLI,
  • conservez les répertoires runtime, output et log alignés sur le système de fichiers visible par l'hôte de l'exécuteur,
  • activez Allow self-signed TLS certificates during crawl uniquement lorsque l'origine utilise un certificat interne ou non public.

Les valeurs typiques du répertoire d'exportateur sont :

  • /usr/local/lib/node_modules/@smart-cloud/publisher-exporter
  • /opt/smartcloud/publisher-exporter/node_modules/@smart-cloud/publisher-exporter

Premiers tests de validation

Exécutez d'abord une commande directe de l'exportateur :

PUBLISHER_CONFIG=./publisher.config.json publisher-exporter crawl

Validez ensuite le traitement de la file d'attente à partir du répertoire runtime WordPress :

publisher-exporter queue-runner \
--runtime-dir /var/www/site/wp-content/uploads/smartcloud-static-publisher/runtime \
--max-jobs 1

Si vous préférez ne pas installer globalement, remplacez publisher-exporter par npx @smart-cloud/publisher-exporter.

Modèle mental recommandé

L'exportateur est une infrastructure, pas un sous-dossier caché du plugin. Installez-le et exploitez-le là où se trouve déjà votre automatisation de déploiement.