🧨
CIで突然fastlaneが Invalid password passed via 'MATCH_PASSWORD' と言ってきた
fastlane match
できなくなってる
CI/CD環境でGitHub Actions上でfastlaneを使ってテスト配信を行おうとしたところ、fastlane match
で以下のようなエラーが発生して、証明書が取得できなくなりました。
[04:50:22]: Cloning remote git repo...
[04:50:22]: If cloning the repo takes too long, you can use the `clone_branch_directly` option in match.
[04:50:23]: Checking out branch master...
[04:50:23]: wrong final block length
[04:50:23]: Couldn't decrypt the repo, please make sure you enter the right password!
+---------------------------------------------------------------------------------+
| Lane Context |
+---------------------------+-----------------------------------------------------+
| DEFAULT_PLATFORM | ios |
| PLATFORM_NAME | ios |
| LANE_NAME | ios stg |
| KEYCHAIN_PATH | ~/Library/Keychains/fastlane_tmp_keychain |
| ORIGINAL_DEFAULT_KEYCHAIN | "/Users/runner/Library/Keychains/login.keychain-db" |
+---------------------------+-----------------------------------------------------+
[04:50:23]: Invalid password passed via 'MATCH_PASSWORD'
MATCH_PASSWORD
はGitHubのsecretで管理しており、変更した覚えもありません。
Actionsのキャッシュを削除したり、MATCH_PASSWORD
をsecretに再度登録しても同じエラーで落ちてしまっていました。
証明書の更新が原因だった
fastlaneのissueを漁っていると、以下のコメントを見つけました。
このコメントをされている方と全く同じで、
- 最近fastlaneのバージョンを
2.220.0
にバージョンアップした -
2.220.0
のfastlaneで証明書を更新した - GitHub Actions上のfastlaneはまだ
2.219.0
だった
ということが原因でした。
CI上でのfastlaneのインストールはruby/setup-rubyを使って行なっていましたが、CIが動いているブランチにmainブランチを取り込めていなかったため、Gemfile.lock
が古かったようです。
そのため、Gemfile.lock
のfastlaneのバージョンを上げてから再度CIを実行したところ、無事 fastlane match
が成功するようになりました。
Gemfile.lock
・・・
- fastlane (2.190.0)
+ fastlane (2.220.0)
・・・
Discussion