Installation de l’extension Adobe Commerce B2B
L’extension Adobe Commerce B2B, magento/extension-b2b
, est disponible pour toutes les versions prises en charge d’Adobe Commerce. Il est installé après l’installation d’Adobe Commerce.
Conditions requises
- Adobe Commerce, toutes les versions prises en charge
- PHP 8.1, 8.2 et 8.3 (nécessite B2B 1.5.0)
- Composer
Plateformes prises en charge
- Adobe Commerce sur les infrastructures cloud (ECE)
- Adobe Commerce On-Premise (EE)
Etapes d'installation
Conditions préalables
-
Accédez à repo.magento.com pour télécharger l’extension. Pour la génération des clés et l’obtention des droits nécessaires, voir Obtenir vos clés d’authentification.
Enregistrez les clés d’authentification pour l’installation en les définissant globalement dans votre répertoire COMPOSER_HOME. Vous pouvez également les enregistrer dans un fichier auth.json dans le répertoire racine de l’application Adobe Commerce.
-
Version prise en charge de l’extension B2B-Déterminez la version la plus récente de l’extension B2B prise en charge sur la version Adobe Commerce déployée.
-
Consultez les notes de mise à jour pour obtenir les informations les plus récentes sur la compatibilité des versions, les mises à jour ou les modifications pouvant affecter les exigences d’installation ou de mise à niveau.
Installez l’extension B2B (magento/b2b-extension
) à l’aide du compositeur. L’extension est un métapaquet de compositeur qui inclut la collection de modules qui activent les fonctionnalités B2B pour une instance Adobe Commerce. Pour obtenir la liste des modules inclus, voir Packages B2B.
note tip |
---|
TIP |
Lors de l’installation d’Adobe Commerce B2B sur une infrastructure cloud, Adobe vous recommande de déployer votre application Adobe Commerce dans un environnement d’intégration ou d’évaluation avant de commencer. |
Adobe recommande de travailler dans une branche de développement lors de l’ajout de l’extension B2B à votre projet. Si vous ne disposez pas d’une branche, voir Créer une branche pour le développement. Lors de l’installation de l’extension B2B, le nom de l’extension Magento_B2b
est automatiquement inséré dans le fichier app/etc/config.php
. Il n’est pas nécessaire de modifier directement le fichier.
Pour installer l’extension B2B :
-
Sur votre station de travail locale, accédez au répertoire du projet.
-
Créez ou extrayez une branche de développement.
-
Ajoutez l’extension B2B à la section
require
du fichiercomposer.json
.code language-bash composer require magento/extension-b2b --no-update
-
Mettez à jour les dépendances du projet.
code language-bash composer update
-
Ajout, validation et modifications de code push.
code language-bash git add -A
code language-bash git commit -m "Install the B2B extension."
code language-bash git push origin <branch-name>
note note NOTE L’envoi de mises à jour à l’environnement cloud lance le processus de déploiement cloud de Commerce pour appliquer les modifications. Vérifiez le statut du déploiement dans le journal de déploiement. Si vous rencontrez des erreurs de déploiement, reportez-vous à la section Récupération après une défaillance de composant. -
Une fois la création et le déploiement terminés, utilisez SSH pour vous connecter à l’environnement distant et vérifier que l’extension B2B est installée et activée.
code language-bash bin/magento module:status Magento_B2b
Un nom d’extension utilise le format suivant :
<VendorName>_<ComponentName>
.Exemple de réponse :
code language-none Magento_B2b : Module is enabled
-
Dans le répertoire racine de l’application Adobe Commerce, mettez à jour le
composer.json
pour ajouter les dépendances de l’extension B2B :code language-bash composer require magento/extension-b2b:<version>
Si une erreur se produit, par exemple :
code language-none [InvalidArgumentException] Could not find a matching version of package magento/extension-b2b.
Vérifiez l’orthographe du package, votre contrainte de version, et assurez-vous que le package est disponible et correspond à vos exigences de stabilité minimale (stable).
-
Si vous y êtes invité, saisissez vos clés d’authentification.
Votre clé publique est votre nom d’utilisateur ; votre clé privée est votre mot de passe. Si vous avez stocké vos clés publiques et privées dans
auth.json
, vous n’êtes pas invité à vous authentifier. -
Exécutez les commandes suivantes une fois que le compositeur a terminé la mise à jour des modules :
code language-bash bin/magento setup:upgrade
code language-bash bin/magento setup:di:compile
code language-bash bin/magento setup:static-content:deploy -f
code language-bash bin/magento cache:clean
note note NOTE En mode Production , il se peut que vous receviez un message à Please rerun Magento compile command
. Saisissez les commandes pour terminer l’installation. Adobe Commerce ne vous invite pas à exécuter la commande compiler en mode Développeur.
Une fois l’installation terminée, configurez et démarrez les consommateurs de messages.
Consommateurs de messages
L’extension Adobe Commerce B2B utilise MySQL pour la gestion des files d’attente de messages. Le tableau suivant répertorie les consommateurs de messages qui prennent en charge les fonctionnalités B2B. Après avoir installé l’extension, démarrez les consommateurs de messages pour les fonctionnalités B2B requises pour votre storefront Commerce.
sharedCatalogUpdatePrice
sharedCatalogUpdateCategoryPermissions
negotiableQuotePriceUpdate
purchaseorder.toorder
purchaseorder.transactional.email
purchaseorder.validation
quoteItemCleaner
inventoryQtyCounter
async.operations.all
Configuration des consommateurs de messages
Empêchez d’éventuels problèmes ou retards de traitement en ajoutant les paramètres suivants lorsque vous démarrez les consommateurs de messages pour les fonctionnalités B2B.
-
--max-messages <value>
: indique le nombre maximal de messages que chaque client doit traiter avant de s'arrêter (par défaut = 10000). Bien que Adobe ne le recommande pas, vous pouvez utiliser 0 pour empêcher le client de s’arrêter. La bonne pratique pour une application PHP est de redémarrer les processus de longue durée pour éviter les fuites de mémoire. -
--batch-size <value>
: permet de limiter les ressources système consommées par les consommateurs (CPU, mémoire). L’utilisation de lots plus petits réduit l’utilisation des ressources et, par conséquent, ralentit le traitement. Si spécifié, les messages d'une file d'attente sont consommés par lots de<value>
chacun. Cette option s’applique uniquement au client par lots. Si--batch-size
n’est pas défini, le client par lots reçoit tous les messages disponibles dans une file d’attente.
Pour plus d’informations sur les options de configuration supplémentaires, voir Configuration spécifique.
Démarrer les consommateurs de messages
Pour activer les opérations asynchrones pour les fonctionnalités B2B, vous devez démarrer plusieurs consommateurs de messages.
-
Répertoriez les consommateurs de messages disponibles :
code language-bash bin/magento queue:consumers:list
La commande renvoie les consommateurs de messages disponibles, y compris tous les consommateurs B2B.
-
Démarrez chaque client séparément :
code language-bash bin/magento queue:consumers:start [--max-messages=<value>] [--batch-size=<value>] <consumer_name>
Par exemple :
code language-bash bin/magento queue:consumers:start quoteItemCleaner
&
à la commande, revenez à une invite et continuez à exécuter les commandes. Par exemple : bin/magento queue:consumers:start sharedCatalogUpdatePrice &
.Pour plus d’informations, voir Gérer les files d’attente de messages dans le Guide de configuration.
Ajouter des consommateurs de messages à cron
Vous pouvez automatiser le planning d’exécution des consommateurs de messages SharedCatalogUpdateCategoryPermissions
et SharedCatalogUpdatePrice
en ajoutant le planning au fichier de configuration cron /app/code/Magento/MessageQueue/etc/crontab.xml.
* * * * * ps ax | grep [s]haredCatalogUpdateCategoryPermissions >>/dev/null 2>&1 || nohup php /var/www/html/magento2/bin/magento queue:consumers:start sharedCatalogUpdateCategoryPermissions &
* * * * * ps ax | grep [s]haredCatalogUpdatePrice >>/dev/null 2>&1 || nohup php /var/www/html/magento2/bin/magento queue:consumers:start sharedCatalogUpdatePrice &
Vous pouvez également configurer des plannings pour les consommateurs de messages à partir des paramètres de configuration de la boutique dans Admin.
Activer les fonctionnalités B2B dans l’administration
Après avoir installé l’extension B2B d’Adobe Commerce et démarré les consommateurs de messages, vous devez également activer les fonctionnalités B2B dans l’administration.