Risolvere gli errori di distribuzione di AEM Cloud Manager durante il test dell’interfaccia utente personalizzata a causa della compatibilità con ESM/CommonJS

Questo articolo descrive i passaggi per risolvere gli errori della pipeline di distribuzione durante il passaggio di test dell’interfaccia utente personalizzata in Adobe Experience Manager (AEM) Cloud Manager, causati da problemi di compatibilità tra i moduli ESM e le dipendenze CommonJS.

Descrizione description

Ambiente

Adobe Experience Manager as a Cloud Service (tutte le versioni)

Problema/Sintomi

  • La pipeline di distribuzione non riesce durante il passaggio di test dell’interfaccia utente personalizzata in Cloud Manager.
  • I registri di errori mostrano messaggi quali: ERR_REQUIRED_ESM: è necessario utilizzare l’importazione per caricare il modulo ES: @wdio/logger.
  • Ulteriori errori si verificano quando i reporter solo ESM (ad esempio, wdio-html-nice-reporter) vengono caricati utilizzando require() nei file di configurazione, con conseguente errore ERR_REQUIRED_ESM simile.
  • Possono verificarsi errori di indicizzazione anche se l’ambiente di destinazione non è completamente attivo durante la distribuzione.

Causa

Gli errori sono dovuti a incompatibilità tra le dipendenze dei moduli CommonJS e ES nella configurazione di test dell’interfaccia utente personalizzata. Inoltre, la distribuzione potrebbe non riuscire se l’ambiente di destinazione non è attivo.

Risoluzione resolution

Per risolvere il problema, segui i passaggi seguenti:

  1. Esaminare le dipendenze dei test personalizzati dell’interfaccia utente, in particolare quelle relative a WebdriverIO (ad esempio @wdio/logger e wdio-html-nice-reporter).

  2. Aggiorna istruzioni di importazione per compatibilità ESM:

    • Rimuovi tutte le require('@wdio/logger') importazioni dai file CommonJS (ad esempio launcher.js e comparisonstrategy.js).
    • Sostituire queste importazioni con semplici istruzioni di registrazione o utilizzare import() dinamico, se necessario.
  3. Regola configurazione reporter:

    • Se si utilizzano reporter solo ESM (ad esempio wdio-html-nice-reporter), assicurarsi che siano caricati utilizzando la sintassi import anziché require() nei file di configurazione (ad esempio wdio.conf.commons.js).
    • È possibile rieseguire il factoring dei file di configurazione affinché siano compatibili con ESM se richiesto dal set di dipendenze oppure rimuovere i reporter solo ESM dall’array dei reporter per l’esecuzione di Cloud Manager.
  4. Assicurati che l’ambiente di destinazione sia completamente attivo prima di eseguire la pipeline di distribuzione per evitare errori di indicizzazione. Se l’ambiente è stato precedentemente sospeso, attivarlo ed eseguire nuovamente la pipeline.

  5. Eseguire nuovamente la pipeline di distribuzione e monitorare gli errori.

  6. Verificare che il passaggio del test dell’interfaccia utente personalizzata sia stato completato correttamente e che la distribuzione proceda senza errori di compatibilità del modulo.

recommendation-more-help
experience-cloud-kcs-help-kbarticles