actions / actions/runner

`Load failed: 5: Input/output error` on ./svc.sh run | Mac Big Sur Issues?

Open
#1,056 30 comments 15 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug needs-investigation Runner Bug
Dominant language
C#
Stars
6.3k
Forks
1.4k
Avg merge
1d 16h
Merged PRs (30d)
24

Description

Describe the bug
Just deployed 2 new self-hosted runners on Mac Minis, I get the error Load failed: 5: Input/output error when I install and then start the runner as a service. Interestingly the service appears to start and the runner appears online on github.com
Silicon Intel
OS Version Big Sur 11.2.3

To Reproduce

  1. Install the latest self-hosted runner (v2.278.0 at the time of writing) and setup the runner ./config.sh --url $URL --token $TOKEN
  2. Install the runner as a service ./svc.sh install
  3. Run the service ./svc.sh run

Expected behavior
No error is posted

Runner Version and Platform

Silicon Intel
OS Version Big Sur 11.2.3
Runner Version v2.278.0

What's not working?

The runner appears to register with github and take work, currently testing to see if there is any functional issues, will update

Job Log Output

I've replaced our actual org and hostname values with $org and $hostname

starting actions.runner.$org.$hostname
Load failed: 5: Input/output error
status actions.runner.$org.$hostname:

/Users/runner/Library/LaunchAgents/actions.runner.$org.$hostname.plist

Started:
512 0 actions.runner.$org.$hostname

Runner and Worker's Diagnostic Logs

If you google load failed 5 input/output error you will find lots of posts about this error on a wide array of software being installed as a service with lots of references to Big Sur. Something has changed in relation to Big Sur and services and the plist that gets auto generated by the service install script and / or the values within the plist no longer being valid for some reason.

Example Search Results
https://developer.apple.com/forums/thread/665661
https://www.reddit.com/r/MacOS/comments/kbko61/launchctl_broken/
https://www.reddit.com/r/MacOS/comments/kbko61/launchctl_broken/gpv2to1/

EDIT

It looks like launchctl load | unload are now legacy commands, the svc.sh script probably needs looking to setup / run the service in a > Big sur compliant way?

https://ss64.com/osx/launchctl.html

Subcommands from the previous implementation of launchd are generally
available, though some may be unimplemented. Unimplemented subcommands
are documented as such.

load | unload [-wF] [-S sessiontype] [-D searchpath] paths ...
        Load the specified configuration files or directories of
        configuration files.  Jobs that are not on-demand will be started
        as soon as possible. All specified jobs will be loaded before any
        of them are allowed to start. Note that per-user configuration
        files (LaunchAgents) must be owned by root (if they are located
        in /Library/LaunchAgents) or the user loading them (if they are
        located in $HOME/Library/LaunchAgents).  All system-wide daemons
        (LaunchDaemons) must be owned by root. Configuration files must
        disallow group and world writes. These restrictions are in place
        for security reasons, as allowing writability to a launchd
        configuration file allows one to specify which executable will be
        launched.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with svc.sh and the generated /Users/runner/Library/LaunchAgents/actions.runner.$org.$hostname.plist on macOS Big Sur. Reproduce the ./svc.sh install and ./svc.sh run steps, then inspect the launchctl behavior and plist details described in the report. Done means the service starts without “Load failed: 5: Input/output error” while the runner remains online and functional.

Written by the indexing model from the issue text.

Assessment

Tech stack
macos, shell
Domain
ci-cd, devops, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.