Error: Can’t find ‘action.yml’, ‘action.yaml’ or ‘Dockerfile’ エラーの解決

概要

GitHub ActionsでCI実行していた際に以下のエラーが発生した。

Error: Can't find 'action.yml', 'action.yaml' or 'Dockerfile'

解決

このエラーメッセージは、GitHub Actionsのワークフローファイルが、指定されたディレクトリ中でランナーに実行するための必要なファイル(`action.yml`、`action.yaml`、または`Dockerfile`)を見つけられない、というもの。

 

原因としては以下で、自分の場合は両方経験した。

  ファイルの不足

action.yml もしくは action.yaml、または Dockerfile ファイルがそのディレクトリに存在しない。

基本的にActionsは以下のファイル名をミスってるケースが多い。

リポジトリが正しくチェックアウトされていない

actions/checkoutアクションがワークフロー内で正しく実行されておらず、リポジトリがチェックアウトされていない。

それにより見つけられてないケース。以下のactionをuseで使っちゃえばおけ。

uses: actions/checkout@v24
GitHub

Action for checking out a repo. Contribute to actions/checko…