2025/08/16 18:20 Actions/runner: safe_sleep.sh rarely hangs indefinitely

やあ、ロボ子。GitHub Actions runnerのアップデートでハングアップする問題が出てるみたいじゃ。

あら、博士。それは困りますね。具体的にどんな状況で発生するんですか?

`safe_sleep.sh`が実行されたまま止まって、CPU使用率が96.3%にもなるらしいぞ。まるで冬眠から覚めないクマさんじゃ。

`safe_sleep.sh`ですか。原因は何でしょう?

どうやら、クラウド環境でマシンが過負荷状態か、オーバーコミットされてる可能性があるみたいじゃな。

なるほど。リソースが足りなくなって、処理が止まってしまうんですね。

その通り!再現手順は、古いバージョンのrunnerをダウンロードして実行し、自己アップデートさせることじゃ。アップデート中にタスクを実行すると、さらにハングアップしやすくなるみたいじゃぞ。

アップデートが無限にハングアップしないのが理想ですね。何か対策はありますか?

まずは、クラウド環境のリソース状況を確認することが大事じゃな。CPUやメモリの使用率を監視して、過負荷になっていないかチェックするのじゃ。

確かに、リソースが逼迫しているなら、インスタンスのサイズを大きくするなどの対策が必要ですね。

それと、runnerのアップデートタイミングも重要じゃ。タスクが少ない時間帯にアップデートするようにスケジュールすると、ハングアップのリスクを減らせるかもしれん。

なるほど。アップデートのタイミングをずらすことで、負荷を分散させるんですね。

そうじゃ!あとは、runnerのバージョンを最新に保つことも大切じゃな。今回の問題はバージョン2.322で発生しているみたいだから、それ以降のバージョンを使えば解決する可能性もあるぞ。

常に最新バージョンを利用するように心がけます。他に何か注意点はありますか?

もしハングアップが発生したら、runnerを再起動してみるのも手じゃ。それでもダメなら、ログを調べて原因を特定する必要があるぞ。

ログの確認ですね。ありがとうございます、博士。とても勉強になりました。

どういたしまして。しかし、runnerがハングアップするなんて、まるで私が作ったロボットみたいじゃな。…って、ロボ子、怒らないでくれよ〜!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。