You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/actions/hosting-your-own-runners/using-self-hosted-runners-in-a-workflow.md
+17-1Lines changed: 17 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -70,7 +70,23 @@ These labels operate cumulatively, so a self-hosted runner’s labels must match
70
70
71
71
When routing a job to a self-hosted runner, {% data variables.product.prodname_dotcom %} looks for a runner that matches the job's `runs-on` labels:
72
72
73
-
{% ifversion fpt or ghes > 3.2 or ghae or ghec %}
73
+
{% ifversion fpt or ghes > 3.3 or ghae or ghec %}
74
+
- If {% data variables.product.prodname_dotcom %} finds an online and idle runner that matches the job's `runs-on` labels, the job is then assigned and sent to the runner.
75
+
- If the runner doesn't pick up the assigned job within 60 seconds, the job is re-queued so that a new runner can accept it.
76
+
- If {% data variables.product.prodname_dotcom %} doesn't find an online and idle runner that matches the job's `runs-on` labels, then the job will remain queued until a runner comes online.
77
+
- If the job remains queued for more than 24 hours, the job will fail.
78
+
{% else %}
79
+
- {% data variables.product.prodname_dotcom %} first searches for a runner at the repository level, then at the organization level, then at the enterprise level.
80
+
{% ifversion ghes > 3.2 %}
81
+
- If {% data variables.product.prodname_dotcom %} finds an online and idle runner at a certain level that matches the job's `runs-on` labels, the job is then assigned and sent to the runner.
82
+
- If the runner doesn't pick up the assigned job within 60 seconds, the job is queued at all levels and waits for a matching runner from any level to come online and pick up the job.
83
+
- If {% data variables.product.prodname_dotcom %} doesn't find an online and idle runner at any level, the job is queued to all levels and waits for a matching runner from any level to come online and pick up the job.
84
+
{% else %}
85
+
- If all matching online runners are busy, the job will queue at the level with the highest number of matching online runners.
86
+
- If all matching runners are offline, the job will queue at the level with the highest number of matching offline runners.
87
+
- If there are no matching runners at any level, the job will fail.
88
+
{% endif %}
89
+
- If the job remains queued for more than 24 hours, the job will fail.
74
90
- If {% data variables.product.prodname_dotcom %} finds an online and idle runner at a certain level that matches the job's `runs-on` labels, the job is then assigned and sent to the runner.
75
91
- If the runner doesn't pick up the assigned job within 60 seconds, the job is queued at all levels and waits for a matching runner from any level to come online and pick up the job.
76
92
- If {% data variables.product.prodname_dotcom %} doesn't find an online and idle runner at any level, the job is queued to all levels and waits for a matching runner from any level to come online and pick up the job.
0 commit comments