'Error "Waiting for a runner to pick up this job" using GitHub Actions
When I use GitHub Actions with my config, there is a long waiting and it shows "Waiting for a runner to pick up this job".
What does 'runner' mean? And how can I resolve the problem?
Solution 1:[1]
One potential reason might be that GitHub does not support anymore the operating system you're requesting.
I noticed the same problem with one of my build using:
runs-on: ubuntu-16.04
The reason no runner are picking the job is that GitHub stopped supporting Ubuntu 16.04 on September 20, 2021, see:
So I had to move to Ubuntu 18.04 which is supported, and it solved the problem for me. For a list of supported operating systems, see:
https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners
Solution 2:[2]
If you misspell the requested runner's name after runs-on:
, GitHub Actions won't explicitly tell you that you made a mistake. Instead, it will assume that a runner by that name exists and will continue waiting forever for it to be made available.
This is the most common reason why we face this error. Make sure you spell the operating system and architecture name correctly after runs-on:
.
Solution 3:[3]
In my case, it was petty mistake.
The runs-on was supposed to be ubuntu-latest, but was self-hosted. And it was waiting on it for ever.
jobs:
Example-Actions-Job:
name: Exploring GitHub Actions
runs-on: self-hosted
steps:
Solution 4:[4]
This issue will also happen if you have not shared your self hosted runners with the repo correctly. The runs-on
line is correct (i.e. there are other jobs with identical runs-on
elsewhere that are working).
We have GitHub Enterprise runners and the team had correctly added them at the org level but had not authorised the specific repository to use them. It is obvious when you know because the runners tab for the repository is empty but confusing to the team because they did add the runners.
The solution is to go to the org, select the runner or runner group, click on the name, then select the repo from the list of available repos. You may also need to allow public repos or change the visibility of their repo as that also prevents runners being available to a specific repo.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
Solution | Source |
---|---|
Solution 1 | |
Solution 2 | Param Siddharth |
Solution 3 | |
Solution 4 | Martin |