AEM Cloud Manager CDN設定デプロイメントでのYAML解析エラーの解決

この記事では、YAMLが外部検証ツールを通過する場合でも、AEM Cloud Manager パイプラインを介してCDN設定ファイルをデプロイする際に発生するYAML解析エラーを解決する方法について説明します。

説明 description

環境

Adobe Experience Manager as a Cloud Service(すべてのバージョン)

問題/症状

  • cdn.yamlのデプロイメント中にCloud Manager パイプラインが失敗し、YAML解析エラーが発生します。
  • YAML ファイルは、外部バリデーターで有効に表示されます。

原因

このエラーは、通常、インデントの誤り、タブ文字の使用、末尾の空白など、YAML形式の問題が原因で発生します。 これらの問題は、汎用のYAML バリデーターでは検出されないかもしれませんが、Cloud Manager パイプラインによって適用されます。

解決策 resolution

YAML解析エラーを修正するには、次の手順に従います。

  1. インデントの問題を確認します。

    – すべてのYAML キーとリスト項目が、AEM Cloud Managerで想定される構造に従って正しくインデントされていることを確認します。

    – 例えば、- ‘name’および’rules’ エントリは、YAML階層のそれぞれのレベルに従ってインデントする必要があります。

    – 構造の例:

    code language-none
    trafficFilters:
        rules:
            - name: block-example
            when:
                allOf:
                - { reqProperty: tier, equals: "publish" }
                - { reqProperty: path, equals: "/content/example/path" }
                - { reqProperty: clientIp, notIn: [  "192.0.2.0/24", "198.51.100.0/24" ]  }
            action:
                type: block
    
  2. 末尾の空白とタブ文字を削除します。

    – 空白文字を表示できるテキストエディターで「cdn.yaml」ファイルを開きます。

    – 最後の設定行の後(例:「type: block」の後)に、タブ文字または末尾の空白文字を削除します。

    ​3. 外部ツールでYAMLを検証する:

    • yamllint (https://www.yamllint.com/)などのツールを使用して、一般的なYAML構文エラーを確認します。

    – 注意:外部検証を渡しても、ファイルがAEM Cloud Managerの要件を満たしていることを保証できません。

    ​4. Cloud Manager パイプラインを使用した検証:

    – 修正された「cdn.yaml」をソースコントロールリポジトリにコミットしてプッシュします。

    • Cloud Manager設定パイプラインを実行して、エラーが解決されていることを確認します。

    ​5. 正しい構造については、CDNでのトラフィックの設定を確認してください。

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