ENOAUDITおよびエンドポイントの廃止に関する通知が表示され、npm監査ステップでCloud Manager パイプラインが失敗する

この記事では、非推奨のnpm監査エンドポイントの使用によって引き起こされるnpm監査ステップでCloud Manager パイプラインのエラーを解決する方法について説明します。

説明 description

環境

  • Adobe Experience Manager Cloud Manager(すべてのバージョン)

症状

  • Cloud Manager パイプラインは、Maven ビルドが開始される前のnpm監査ステップで失敗します。
  • 観察されるエラーは次のとおりです。
  • npm notice This endpoint is being retired. Use the bulk advisory endpoint instead.
  • npm ERR! code ENOAUDIT
  • npm ERR! audit Your configured registry (https://registry.npmjs.org/) may not support audit requests, or the audit endpoint may be temporarily unavailable.
  • クローンと変更ログのステップは成功しますが、npm監査ステップは失敗し、パイプラインがMaven ビルドに進めなくなります。
  • 同じコミットおよびNode/npm バージョンで同じnpm audit コマンドをローカルで実行すると成功し、非推奨化の通知は表示されません。
  • node_modulesの有無や使用されているノードバージョンに関係なく、このエラーはローカルで再現可能ではありません。

原因

Cloud Manager パイプラインに組み込まれたnpm監査ステップは、非推奨の監査エンドポイントを使用するデフォルトのNode 14 / npm 6 ランタイムで実行されます。 このエンドポイントは廃止され、新しいNode/npm バージョンで同じコマンドがローカルで成功した場合でも、ENOAUDITで監査が失敗します。 パイプライン変数NODE_VERSION=18を設定すると、監査ステップでサポートされているエンドポイントが使用されるようになります。

解決策 resolution

問題を解決するには、次の手順に従います。

  1. Cloud Managerで、パイプライン変数NODE_VERSION=18をパイプライン設定に追加します。
  2. パイプラインを再実行します。
  3. これでnpm監査ステップが正常に完了し、パイプラインがMaven ビルドに進むことを確認します。

注意:リポジトリ内でのみNode.jsを更新しても(例:.nvmrcまたはpackage.json エンジンを使用)、Cloud Manager フロントエンドパイプラインコンテナの組み込み監査手順で使用されるNode バージョンには影響しません。

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