Configuration de la publication basée sur les microservices avec l’authentification OAuth
Le microservice de publication vous permet d’exécuter simultanément d’importantes charges de travail de publication sur Experience Manager Guides as a Cloud Service et de tirer parti de la plateforme Adobe I/O Runtime sans serveur leader du secteur.
Pour chaque demande de publication, Experience Manager Guides as a Cloud Service exécute un conteneur distinct qui est mis à l’échelle horizontalement en fonction des demandes des utilisateurs. Vous pouvez ainsi exécuter plusieurs requêtes de publication et obtenir de meilleures performances que leurs serveurs On-premise Adobe Experience Manager volumineux.
Comme le service de publication cloud est sécurisé par l’authentification OAuth d’Adobe IMS, procédez comme suit pour intégrer leurs environnements aux workflows d’authentification basée sur les jetons sécurisés d’Adobe et commencer à utiliser la solution de publication évolutive basée sur le cloud.
Création de configurations IMS dans Adobe Developer Console
Rôle requis pour créer les configurations : administrateur système
Pour créer des configurations IMS dans , procédez comme suit :
-
Ouvrez :
https://developer.adobe.com/console. -
Accédez à l’onglet Projets à partir du haut.
{width="500"}
Sélectionnez l’onglet Projetsdans le Adobe Developer Console
-
Pour créer un projet vide, sélectionnez Projet vide dans le menu déroulant Créer un projet.
{width="500"}
Créer un nouveau projet vide.
-
Sélectionnez API dans le menu déroulant Ajouter au projet pour ajouter l’API IO Management à votre projet.
{width="300"}
Sélectionnez un projet d’API dans la liste déroulante.
{width="500"}
Ajoutez l’API I/O Management à votre projet.
-
Créez des informations d’identification OAuth et enregistrez-les.
{width="500"}
Configurer les informations d’identification OAuth dans votre API.
-
Revenez à l’onglet Projets et sélectionnez Présentation du projet sur la gauche.
{width="500"}
Commencer le nouveau projet.
-
Cliquez sur le bouton Télécharger en haut pour télécharger le fichier JSON du service.
{width="500"}
Téléchargez les détails du service JSON.
Vous avez configuré les détails d’authentification OAuth et téléchargé les détails du service JSON. Gardez ce fichier à portée de main car il est requis dans la section suivante.
Ajouter la configuration IMS à l’environnement
Mise à jour de la configuration existante (passage de JWT à OAuth )
Si vous utilisez déjà un microservice pour la publication à l’aide de JWT (obsolète), procédez comme suit pour mettre à jour les configurations :
-
Ouvrez et sélectionnez le programme contenant l’environnement à configurer.
-
Passez à l’onglet Environnements.
-
Sélectionnez le nom de l’environnement à configurer. Vous devriez y accéder à la page Informations sur l’environnement.
-
Passez à l’onglet Configuration.
-
Mettez à jour le champ JSON SERVICE_ACCOUNT_DETAILS avec le nouveau fichier JSON OAuth que vous avez téléchargé.
-
Supprimez le champ PRIVATE_KEY.
{width="500"}
Mettez à jour les configurations d’environnement JWT existantes.
Première configuration
Pour utiliser un microservice de publication pour la première fois, mettez à jour les configurations en procédant comme suit :
-
Ouvrez et sélectionnez le programme contenant l’environnement à configurer.
-
Passez à l’onglet Environnements.
-
Sélectionnez le nom de l’environnement à configurer. Vous devriez y accéder à la page Informations sur l’environnement.
-
Passez à l’onglet Configuration.
-
Créez une configuration nommée SERVICE_ACCOUNT_DETAILS. Dans la valeur , ajoutez le contenu du fichier JSON OAuth que vous avez téléchargé à partir de Developer Console .
Configurez l’environnement pour la première fois.
Premières modifications du code pour l’activation de la publication basée sur les microservices
Une fois que vous avez ajouté la configuration IMS à l’environnement, procédez comme suit pour lier ces propriétés à Experience Manager Guides à l’aide d’OSGi :
-
Dans le code de votre projet Git Cloud Manager, ajoutez les deux fichiers suivants dans
/apps/fmditaCustom/config(pour le contenu des fichiers, consultez Annexe).com.adobe.aem.guides.eventing.ImsConfiguratorService.cfg.jsoncom.adobe.fmdita.publishworkflow.PublishWorkflowConfigurationService.xml
-
Assurez-vous que les fichiers nouvellement ajoutés sont couverts par votre
filter.xml. -
Validez et envoyez vos modifications Git.
-
Exécutez le pipeline pour appliquer les modifications à l’environnement.
Une fois cette opération effectuée, vous pouvez utiliser la publication cloud basée sur les microservices.
FAQ
- Si les configurations OSGi pour utiliser le microservice sont activées, le processus de publication fonctionnera-t-il sur le serveur Experience Manager local avec la même base de code ?
- Non, si l’indicateur
dxml.use.publish.microserviceest défini surtrue, il recherche toujours les configurations de microservice. Définissezdxml.use.publish.microservicesurfalsepour que la publication fonctionne sur votre serveur local.
- Non, si l’indicateur
- Quelle quantité de mémoire est allouée au processus DITA lors de l’utilisation de la publication basée sur les microservices ? Cela est-il piloté par le biais du profil et des paramètres DITA ?
- Avec la publication basée sur les microservices, l’allocation de mémoire n’est pas pilotée par le profil et les paramètres DITA. La mémoire totale disponible sur le conteneur de services est de 8 Go, dont 6 Go sont alloués au processus DITA-OT.
Annexe appendix
Fichier :com.adobe.aem.guides.eventing.ImsConfiguratorService.cfg.json
Contenu :
{
"service.account.details": "$[secret:SERVICE_ACCOUNT_DETAILS]",
}
Fichier : com.adobe.fmdita.publishworkflow.PublishWorkflowConfigurationService.xml
Contenu :
dxml.use.publish.microservice: activer la publication basée sur les microservices à l’aide de DITA-OTdxml.use.publish.microservice.native.pdf: activer la publication native PDF basée sur les microservices
<?xml version="1.0" encoding="UTF-8"?>
<jcr:root xmlns:jcr="http://www.jcp.org/jcr/1.0" xmlns:sling="http://sling.apache.org/jcr/sling/1.0"
jcr:primaryType="sling:OsgiConfig"
dxml.publish.microservice.url="https://adobeioruntime.net/api/v1/web/543112-guidespublisher/default/publishercaller.json"
dxml.use.publish.microservice="{Boolean}true"
dxml.use.publish.microservice.native.pdf="{Boolean}true"
/>