Exemple d'installation
Le guide ci-dessous détaille un exemple d'installation de l'application Symfony WorkersCore avec activation de la fonctionnalité ExtendedSmartField.
Prérequis
- php >= 8.1
- sqlite >= 3.34
- libpq-dev >= 13.10 et le driver pdo_pgsql
Télécharger et décompresser l'archive
Installons le paquet @anakeen/workers
à l'aide de la commande :
npx @anakeen/anakeen-platform install --flavour custom --cwd .
Décompressons l'archive qui nous intéresse node_modules/@anakeen/workers/zip/workers-core-x.x.x.zip
.
unzip node_modules/@anakeen/workers/zip/workers-core-x.x.x.zip -d /ank-workers
Configuration
Les workers ont besoin d'un jeton HTTP pour communiquer de manière sécurisée avec AP4. Lançons la commande suivante au niveau d'AP4 :
./ank.php --script=generateWorkerToken --feature=ExtendedSmartField
### résultat ###
[ExtendedSmartField] Token generated.
abcdxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Rendons-nous dans le répertoire d'installation de l'application WorkersCore :
cd /ank-workers/workers
Renseignons le token et les variables d'environnement nécessaires dans un nouveau fichier .env.local
:
FEATURES=ExtendedSmartField
AP4_DOMAIN=http://localhost:8023 # à remplacer par votre domaine AP4
TOKEN_EXTENDEDSMARTFIELD=abcdxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Vérifions notre configuration :
php bin/console status
### résultat ###
Features
--------
┌────────────────────┬─────────┬───────┐
│ Feature │ Enabled │ Ready │
├────────────────────┼─────────┼───────┤
│ DashboardETL │ false │ - │
│ ExtendedSmartField │ true │ true │
└────────────────────┴─────────┴───────┘
Environment variables
---------------------
// Environment variables properly defined
Initialiser le contexte
Avant de déployer les workers, initialisons le contexte :
php bin/console context:init
Lancement des services
Générons un exemple de fichiers de configuration :
php bin/console conf:generate --pcs=systemd
Ajustons le nombre de workers dans
ank-workers.service
:[Unit] Description=ank-workers target Requires=esf-worker@1.service esf-worker@2.service esf-worker@3.service esf-worker@4.service esf-worker@5.service [Service] ExecStart=/bin/true ExecReload=/bin/true RemainAfterExit=on [Install] WantedBy=multi-user.target
Informations
Le nombre préconisé de workers est disponible ici.
Copions ces fichiers dans le répertoire de configuration de systemd et activons les services :
cp *.service /usr/lib/systemd/system/ systemctl enable ank-workers
Il ne reste plus qu'à démarrer la target principale :
systemctl start ank-workers