DevOps / Github Interview questions
How do you troubleshoot a GitHub Actions job stuck queued?
A job stuck in a "Queued" state almost always means GitHub can't find an available runner that matches the job's requirements, rather than the workflow itself being broken.
- Check runner availability - for self-hosted runners, confirm at least one matching runner is online in Settings > Actions > Runners.
- Check labels - if the job specifies custom
runs-onlabels, confirm a runner registered with those exact labels exists; a mismatch leaves the job unassignable. - Check concurrency limits - organizations and plans have limits on concurrent Actions jobs; if every slot is in use, new jobs queue instead of starting.
- Check GitHub-hosted runner status - occasionally GitHub-hosted runner capacity is delayed platform-wide; GitHub's status page will show ongoing incidents.
- Check billing/spending limits - organizations with a configured Actions spending limit will queue or block new jobs once that limit is reached.
Most stuck-queued cases resolve once the runner label mismatch, offline self-hosted runner, or concurrency ceiling is identified; a workflow YAML error normally fails fast with a clear error rather than leaving the job queued indefinitely.
More Related questions...