はじめに
AWSのCodeBuildで突然エラーが発生するようになった。
エラー文は下記
GPG error: http://repo.mysql.com/apt/debian buster InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 467B942D3A79BD29
調べてみるとこの鍵は有効期限が2022年2月16日までだったそうで、新しい鍵に切り替えられたらしい。
古い鍵ではアップデートが出来なくなったようだ。だったら、新しい鍵をインポートしちゃえばいいってことでした。
修正内容
調べてみると新しい鍵をインポートするコマンドはこちら
sudo rpm –import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
これで解決!と思ったがこちらをDockerコンテナに対して実行する方法がわからなかった。
rpmコマンドはDockerfileでは使えなさそう。。。
※使える方法をご存知の方は教えていただけると幸いです
さらに調べて行くと下記コマンドがヒット
RUN apt-key adv --keyserver pgp.mit.edu --recv-keys 467B942D3A79BD29
こちらを該当Dockerfileに追記したら、CodeBuildが通るようになりました。
最後に
GPGのエラーを修正するだけなら、MySQLのバージョンを最新版にすれば解決できましたが、CodeBuildで別のエラーが発生したので現在はそちらを調査中。
知見ある方いましたらコメントいただけると幸いです。