Problemi di caricamento ed ereditarietà della configurazione OSGi negli ambienti AEM Cloud
Adobe Experience Manager as a Cloud Service (AEMaaCS) riscontra problemi di configurazione OSGi quando i valori risultano mancanti, duplicati o incoerenti tra gli ambienti. Ciò si verifica a causa della rigida risoluzione basata sulla modalità di esecuzione, della distribuzione basata su Git e del caricamento della configurazione a livello di pod. Per risolvere il problema, correggi la struttura delle cartelle OSGi, convalida la denominazione in modalità di esecuzione e ridistribuisci le configurazioni per garantire un comportamento coerente tra i pod.
Descrizione description
Ambiente
- Adobe Experience Manager as a Cloud Service (AEMaaCS)
- Adobe Managed Services (AMS)
Problema/Sintomi
- I valori di configurazione OSGi non vengono visualizzati nella console vDeveloper dopo la distribuzione.
- Vengono visualizzate più istanze dello stesso PID, ad esempio
com.day.cq.mailer.DefaultMailService, una per pod. - Le configurazioni vengono caricate solo su Author o solo su Publish a seconda della modalità di esecuzione.
- I valori di anteprima non corrispondono ai valori di pubblicazione, anche se ereditano per impostazione predefinita.
- La nuova interfaccia utente di Developer Console mostra valori non aggiornati, mentre la visualizzazione classica mostra valori corretti.
Causa principale
AEMaaCS risolve le configurazioni OSGi da Git utilizzando una denominazione delle cartelle basata sulla modalità di esecuzione rigorosa nel percorso dell’archivio richiesto. Le cartelle posizionate in modo errato, i nomi in modalità di esecuzione errati o la nidificazione profonda impediscono il rilevamento della configurazione. Le configurazioni vengono caricate per pod tramite il programma di installazione Sling JCR e l’anteprima eredita i valori di pubblicazione. La nuova interfaccia utente di Developer Console potrebbe visualizzare valori non aggiornati a causa di una limitazione nota.
Risoluzione resolution
Segui questi passaggi per garantire il comportamento e la distribuzione corretti della configurazione OSGi:
- Passare all’archivio Git e verificare che le configurazioni OSGi siano memorizzate in
ui.config/src/main/content/jcr_root/apps/<project>/osgiconfig. - Verificare che le cartelle di configurazione seguano il pattern in modalità di esecuzione corretto, ad esempio
config.publish,config.publish.stageoconfig.author.dev. - Spostare le cartelle di configurazione nidificate, ad esempio
apps/project/test1/test2/config.authorin apps/<project>/osgiconfig/config.<runmode>per garantire il rilevamento. - Identificare l’ambiente di destinazione e assicurarsi che venga applicata la modalità di esecuzione più specifica, ad esempio
config.publish.stagesostituisceconfig.publish. - Correggere eventuali nomi in modalità di esecuzione non corrispondenti, ad esempio
config.stg.public, in un modello valido comeconfig.publish.stage. - Eseguire la pipeline Cloud Manager associata al modulo
ui.configper distribuire le modifiche di configurazione. - Verifica i valori di configurazione nella vista Developer Console Classic perché nell’interfaccia utente più recente potrebbero essere visualizzati dati non aggiornati.
- Apri la visualizzazione di configurazione per Tutti gli autori o Tutti gli editori e verifica che i valori siano raggruppati per pod.
- Ridistribuisci la pipeline se in un solo pod sono visualizzati valori aggiornati, perché può verificarsi una deriva temporanea a livello di pod.
- Rimuovere le cartelle
config.preview.*in modo che Anteprima erediti i valori dalla pubblicazione. - Utilizza le variabili di ambiente con il servizio impostato per visualizzare in anteprima se è necessaria una differenziazione specifica per l’anteprima.
- Rimuovi il file
.cfg.jsonda Git e ridistribuisci la pipeline per eliminare una configurazione e reimpostarla sul valore predefinito. - Aggiungere
mode="replace"infilter.xmlse la configurazione persiste dopo l’eliminazione. - Assicurati che i file di configurazione includano solo le proprietà richieste in modo che i valori non specificati tornino ai valori predefiniti.
- Verifica che tutti i valori di configurazione effettivi vengano visualizzati correttamente in tutti i pod nella vista classica di Developer Console.
Quando effettuare l’inoltro:
- I valori di configurazione non vengono visualizzati dopo la convalida della struttura di cartelle e la ridistribuzione della pipeline.
- La risoluzione in modalità di esecuzione non applica i valori di configurazione previsti nonostante la denominazione corretta della cartella.
- Solo alcuni pod riflettono i valori di configurazione aggiornati dopo più distribuzioni.
- L’anteprima non eredita i valori di pubblicazione dopo la rimozione delle cartelle di configurazione specifiche per l’anteprima.
- L’eliminazione della configurazione non ha effetto dopo la rimozione e la ridistribuzione dei file.
- Il programma di installazione di Sling non elabora le risorse di configurazione come previsto.