経緯
CIからMacのKeychain access にアクセスする際、「"safari"を保存するキーチェーン"login"が見つかりません」というダイアログが必ず出てしまうようになった。ダイアログには「デフォルトに戻す」というボタンがあり、これを押すとキーチェーンをリセットするという事のようだった。キャンセルをすればCIの処理は先に進むものの、いちいちダイアログを手で消さなくてはならなくなった。
原因
何らかの理由で、keychain accessのデフォルトのデータベースである「ログインキーチェーン」が壊れてしまったものと思われる。
対策
まず、キーチェーン以外のものが少し前の状態に巻き戻ってもいいなら、macのバックアップ機能であるタイムマシーンを利用して、壊れる前に戻せばいいだろう。
それができない場合は、手動でログインキーチェーン を消して作り直す。
ただ、内部に入っていた証明書が全部消えてしまうため、まず証明書を書き出して保存しておく。
「自分の証明書」欄の証明書をcommand + Aで全選択し、右クリックでエクスポートを選ぶ。ファイル書き出し形式が.p12になっていることを確認し、任意の場所に書き出す。そうすると、全証明書が一つに纏まった最強のp12ファイルが出来上がる。
これを別のmacに移し、ダブルクリックすると、証明書の内容がそちらのキーチェーン に全てコピーできることをあらかじめ確認しておいた方がいいだろう。
証明書のバックアップが済んだら、上記「デフォルトに戻す」ボタンを使って、ログインキーチェーンをリセットする。
その後、保存しておいたp12ファイルをダブルクリックし、証明書を復活させる。
参考文献
Appleコミュニティ - キーチェーンが見つかりません
木ーチェーンアクセス ユーザーズガイド - Macのキーチェーンアクセスでキーチェーンを削除する