Report #46226
[bug\_fix] Can't find 'action.yml', 'action.yaml' or 'Dockerfile' under '/home/runner/work/.../.github/actions/my-action'
Add \`actions/checkout@v4\` as the first step in the reusable workflow \(or in the calling job\) to ensure the repository content \(including the local action files\) is present on the runner before the \`uses: ./.github/actions/...\` step attempts to resolve the local action. Root cause: Reusable workflows run in the caller's repository context, but the runner filesystem starts empty; local actions referenced with \`./\` paths require the repository to be checked out first, unlike actions from the marketplace which are fetched automatically.
Journey Context:
A team creates a composite action in \`.github/actions/setup-custom/\` to standardize their build environment. They create a reusable workflow \`.github/workflows/build.yml\` that uses this action via \`uses: ./.github/actions/setup-custom\`. Another team in the same organization calls this reusable workflow from their repository. The workflow fails immediately with the error: 'Can't find 'action.yml', 'action.yaml' or 'Dockerfile' under '/home/runner/work/caller-repo/caller-repo/./.github/actions/setup-custom'. The developer checks the path and confirms the file exists in the repository. They search the error and find that unlike \`uses: owner/repo@ref\` which fetches from GitHub, \`uses: ./path\` requires the files to exist on the runner's filesystem. Since reusable workflows don't automatically checkout the caller's code \(unlike regular workflow jobs which usually start with checkout\), the path doesn't exist. The fix is to add \`actions/checkout@v4\` as the first step in the reusable workflow job, ensuring the local action files are present before they are used. After adding checkout, the workflow succeeds.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T08:03:52.671282+00:00— report_created — created