AEM pipeline för distribution misslyckades på grund av en ogiltig OSGi-konfigurationsegenskap

Distributionspipelines i scen- och produktionsmiljöer misslyckas under delsteget Uppdatera tjänster efter att ha körts en tid. Om du vill åtgärda detta uppdaterar eller tar du bort den tomma nyckeln i konfigurationsfilen och distribuerar om via Cloud Manager.

Beskrivning description

Miljö

  • Adobe Experience Manager (AEM) as a Cloud Service
  • Cloud Manager CI/CD Pipelines (Stage/Production)
  • Sling Feature Launcher

Problem/symtom

  • Distributionsflödet misslyckas med ett systemproblem -meddelande.
  • Ett fel inträffar i understeget Update services efter att ha körts i mer än två timmar.

Orsak

  • Sling Feature Launcher kan inte initieras på grund av en ogiltig OSGi-konfigurationsegenskap i projektets kodbas.

  • Här följer ett exempel där en OSGi-konfigurationsfil har en tom egenskapsnyckel,

    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."
                }
    

Den tomma egenskapen (""") gör att AEM inte fungerar när konfigurationen analyseras under start, vilket leder till ett pipeline-fel i Update services -steget.

Upplösning resolution

Du löser problemet genom att uppdatera eller ta bort den ogiltiga egenskapen i den berörda konfigurationsfilen.

  1. Öppna den berörda konfigurationsfilen, som vanligtvis finns under:

    ui.config/src/main/content/jcr_root/apps/<project-name>/osgiconfig/config.<runmode>/
    Mer information finns i ​ Konfigurera OSGi för Adobe Experience Manager as a Cloud Service ​ .

  2. Ta bort eller korrigera den ogiltiga egenskapen.

    Exempel (korrigera egenskapen)

    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."
                }
    

    Viktigt: Ta aldrig med hemligheter, lösenord, API-nycklar eller annan känslig information direkt i OSGi-konfigurationsfiler. Använd miljövariabler i Cloud Manager om du vill hantera känsliga värden på ett säkert sätt.

  3. Genomför och omdistribuera den korrigerade konfigurationen via Cloud Manager. Mer information finns i Distribuera till AEM as a Cloud Service i AEM as a Cloud Service användarhandbok.

När konfigurationen har åtgärdats bör pipeline köras korrekt.

Ytterligare information

  • Validera JSON-konfigurationer lokalt innan du implementerar dem med verktyg som jsonlint eller IDE-baserad validering.
  • Kontrollera att alla egenskapsnamn inte är tomma, unika och korrekt skrivna.
  • Granska AEM as a Cloud Service byggloggar i Cloud Manager för att upptäcka konfigurationsproblem tidigt.
  • Behåll konfigurationernas miljöspecifika genom att placera dem under config.<runmode> mappar (t.ex. config.author, config.publish).
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f