GitLab organization Severitymedium builtIn

Description

Runners should report Status = 'online' to confirm they are reachable and able to accept jobs. Stale, offline, or never-contacted runners should be investigated and either restored or unregistered. A long-lived 'never_contacted' runner usually indicates a registration that never completed; a 'stale' runner is one whose heartbeat has not been received within the configured threshold. Either condition silently degrades pipeline throughput. Reference: https://docs.gitlab.com/ee/ci/runners/runners_scope.html

Recommandation

1. In GitLab, navigate to the runner scope and locate the runner whose Status is not 'online'. 2. If the runner host is reachable, restart the gitlab-runner service and confirm the heartbeat returns. 3. If the runner is no longer needed, click Remove to unregister it. 4. For 'never_contacted' status, re-run the gitlab-runner registration workflow with the displayed registration token.

Règle de politique

{
  "target": "GLRunner",
  "if": {
    "allOf": [
      {
        "resource": "GLRunner",
        "property": "Status",
        "operator": "equals",
        "value": "online"
      }
    ]
  },
  "then": {
    "effect": "Audit"
  }
}