La pipeline di distribuzione di AEM non riesce a causa di una proprietà di configurazione OSGi non valida

Le pipeline di distribuzione negli ambienti di staging e produzione non riescono durante il passaggio Servizi di aggiornamento dopo l'esecuzione per un certo periodo di tempo. Per risolvere il problema, aggiorna o rimuovi la chiave vuota nel file di configurazione e ridistribuiscila tramite Cloud Manager.

Descrizione description

Ambiente

  • Adobe Experience Manager (AEM) as a Cloud Service
  • Pipeline CI/CD di Cloud Manager (Stage/Production)
  • Utilità di avvio funzione Sling

Problema/Sintomi

  • La pipeline di distribuzione non riesce con un problema di sistema messaggio.
  • Si è verificato un errore nel passaggio Aggiorna servizi dopo l'esecuzione per più di 2 ore.

Causa

  • Impossibile inizializzare Sling Feature Launcher a causa di una proprietà di configurazione OSGi non valida nel codebase del progetto.

  • Ecco un esempio in cui un file di configurazione OSGi ha una chiave di proprietà vuota,

    code language-none
    {
                    "scheduler.expression": "0 0 6 * * ?",
                    "job.enabled": true,
                    "": "notifications@example.com",
                    "emailName": "System Reminder",
                    "emailSubject": "Reminder",
                    "emailMessage": "This is an automated reminder for your content."
                }
    

La proprietà vuota ("") causa un errore di AEM durante l'analisi della configurazione durante l'avvio. Questo errore si verifica nel passaggio Servizi di aggiornamento.

Risoluzione resolution

Per risolvere il problema, aggiorna o rimuovi la proprietà non valida nel file di configurazione interessato.

  1. Apri il file di configurazione interessato, in genere disponibile in:

    ui.config/src/main/content/jcr_root/apps/<project-name>/osgiconfig/config.<runmode>/
    Per ulteriori informazioni, consulta Configurazione di OSGi per Adobe Experience Manager as a Cloud Service.

  2. Rimuovi o correggi la proprietà non valida.

    Esempio (correzione della proprietà)

    code language-none
    {
                    "scheduler.expression": "0 0 6 * * ?",
                    "job.enabled": true,
                    "recipientEmail": "notifications@example.com",
                    "emailName": "System Reminder",
                    "emailSubject": "Reminder",
                    "emailMessage": "This is an automated reminder for your content."
                }
    

    Importante: Non includere mai segreti, password, chiavi API o altre informazioni riservate direttamente nei file di configurazione OSGi. Per gestire in modo sicuro i valori sensibili, utilizzare Variabili di ambiente in Cloud Manager.

  3. Esegui il commit e ridistribuisci la configurazione corretta tramite Cloud Manager. Per ulteriori informazioni, consulta Distribuzione in AEM as a Cloud Service nella Guida utente di AEM as a Cloud Service.

Dopo aver corretto la configurazione, la pipeline deve essere eseguita correttamente.

Note aggiuntive

  • Convalida le configurazioni JSON localmente prima del commit, utilizzando strumenti come jsonlint o la convalida basata su IDE.
  • Assicurati che tutti i nomi delle proprietà non siano vuoti, univoci e digitati correttamente.
  • Esamina i registri di build di AEM as a Cloud Service in Cloud Manager per rilevare tempestivamente i problemi di configurazione.
  • Mantenere le configurazioni specifiche dell'ambiente inserendole in config.<runmode> cartelle (ad esempio, config.author, config.publish).
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f