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.
