Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

macOS 15 - all jobs stuck at "Waiting for the VM to boot and be SSH-able..." #86

Closed
hschroeder-worldiety opened this issue Sep 24, 2024 · 4 comments · Fixed by #94
Closed

Comments

@hschroeder-worldiety
Copy link

hschroeder-worldiety commented Sep 24, 2024

Hey there we updated our mac mini M1 runner from 14.7 to 15.0 yesterday.

The gitlab-tart-executor stopped working after the update to macOS 15.

Running with gitlab-runner 17.4.0 (b92ee590)
  on ...
Preparing the "custom" executor
03:00:05
Using Custom executor...
2024/09/23 16:56:51 Pulling the latest version of ghcr.io/cirruslabs/macos-runner:sonoma...
2024/09/23 16:56:52 Cloning and configuring a new VM...
2024/09/23 16:56:52 Waiting for the VM to boot and be SSH-able...
ERROR: Preparation failed: unknown Custom executor executable exit code -1; executable execution terminated with: signal: terminated

When looking at tart list and the graphs of the activity viewer I can see that the vm should be booted and is in a idle state afterwards.

We have a customized the gitlab-runner config, but the problem is also present with the default config.

concurrent = 2

[[runners]]
  # ...
  executor = "custom"
  [runners.feature_flags]
    FF_RESOLVE_FULL_TLS_CHAIN = false
  [runners.custom]
    config_exec = "gitlab-tart-executor"
    config_args = ["config"]
    prepare_exec = "gitlab-tart-executor"
    prepare_args = ["prepare"]
    run_exec = "gitlab-tart-executor"
    run_args = ["run"]
    cleanup_exec = "gitlab-tart-executor"
    cleanup_args = ["cleanup"]

Hope someone can help me with this.

@edigaryev
Copy link
Contributor

edigaryev commented Sep 24, 2024

This is likely related to the newly introduced "Local Network" permission in macOS Sequoia and the fact that GitLab Runner's binary has no LC_UUID identifier, which is critical for the Apple's Transparency Consent and Control framework.

Can you check if the workaround in #85 (comment) works for you?

Without re-building the GitLab Runner (or waiting for the upstream fix) the permission above cannot take effect, even if you've explicitly allowed it in the GUI.

@hschroeder-worldiety
Copy link
Author

Thanks alot! This worked.

Hopefully the LC_UUID Identifier is included when gitlab-runner 17.5 is released.

Never thought it would be a gitlab-runner issue, as our other mac runs just fine using the shell executor and macOS 15.

@edigaryev edigaryev pinned this issue Sep 25, 2024
@hschroeder-worldiety
Copy link
Author

Update: Upstream is still not fixed in gitlab-runner 17.5

@edigaryev
Copy link
Contributor

Thanks to @waddles, this is now fixed in the latest Homebrew version of GitLab Runner (>=17.6.0).

I've created #94 to reflect this in the README.md.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants