⛑️

CIで「A required agreement is missing or has expired.」が発生した場合の対応方法

2024/01/19に公開

事象

CircleCIを実行したところ、次のエラーが発生しました。

fastlane finished with errors

[!] The request could not be completed because:
A required agreement is missing or has expired. - This request requires an in-effect agreement that has not been signed or has expired.

日本語訳すると、次のようになります。

必要な契約が不足しているか、期限切れです。 - この要求には、署名されていないか期限切れの有効な契約が必要です。

対応

エラーメッセージから、Apple Developer Programに関連する何らかの契約が未署名であるか、または期限切れであることが読み取れます。
以下の対応を行います。

  1. Apple Developer Programのアカウントにログインし、利用可能な全ての契約書類を確認する。
  2. 未署名または期限切れの契約があれば、それを更新し、署名する。
  3. 契約の更新後、fastlaneを再実行して、問題が解決されたか確認する。

私が遭遇したエラーは、Apple Developer Programに関連する契約が更新され、それに未署名だったことが原因でした。

Discussion