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

self-hosted mac runner fails when Create additional symlinks #1045

Open
3 tasks
deanjingshui opened this issue Feb 26, 2025 · 2 comments
Open
3 tasks

self-hosted mac runner fails when Create additional symlinks #1045

deanjingshui opened this issue Feb 26, 2025 · 2 comments
Assignees
Labels
bug Something isn't working

Comments

@deanjingshui
Copy link

deanjingshui commented Feb 26, 2025

Description:
I'm experiencing a permission error when using the setup-python GitHub Action. The error occurs when the action attempts to create additional symlinks, specifically for Python version 3.13.2. The error message is:

Create additional symlinks (Required for the UsePythonVersion Azure Pipelines task and the setup-python GitHub Action)
Error: ln: python313: Permission denied
Error: The process '/bin/bash' failed with exit code 1

The issue seems to be related to insufficient permissions for the runner user to create symlinks in the target directory. However, the log does not specify the exact path where the symlinks are being created.

I have checked the permissions of the target directory and ensured that the runner user has write access. However, the issue persists.
Could you please clarify what the default path is for creating these symlinks? Knowing this will help me check the permissions for that specific directory.

Action version:
v5

Platform:

  • Ubuntu
  • [✅] macOS
  • Windows

Runner type:

  • Hosted
  • [✅] Self-hosted

Tools version:

python 3.13

Repro steps:

jobs:
  build-and-upload:
    runs-on: my-darwin-runner
    steps:
      - uses: actions/checkout@v3
      - name: Python Setup
        uses: actions/setup-python@v5
        with:
          python-version: '3.13'

Expected behavior:
The action should successfully create symlinks without encountering permission errors.

Actual behavior:
the full log is:

Installed versions
Version 3.13 was not found in the local cache
Version 3.13 is available for downloading
Download from "https://github.com/actions/python-versions/releases/download/3.13.2-1314[9](https://github.com/lynx-infra/lynx-devtool/actions/runs/13539602101/job/37838858766#step:3:10)511920/python-3.13.2-darwin-arm64.tar.gz"
Extract downloaded archive
/usr/bin/tar xz -C /Users/runner/_work/_temp/b2fdb697-5abd-43ca-806c-101fcd6ddad1 -f /Users/runner/_work/_temp/7bfd7998-47cd-4957-bbd7-a73de281d037
Execute installation script
Check if Python hostedtoolcache folder exist...
Creating Python hostedtoolcache folder...
Install Python binaries from prebuilt package
installer: Package name is Python
installer: Installing at base path /
installer: The install was successful.
Create hostedtoolcach symlinks (Required for the backward compatibility)
Create Python 3.13.2 folder
Create additional symlinks (Required for the UsePythonVersion Azure Pipelines task and the setup-python GitHub Action)
Error: ln: python313: Permission denied
Error: The process '/bin/bash' failed with exit code 1

@deanjingshui deanjingshui added bug Something isn't working needs triage labels Feb 26, 2025
@deanjingshui deanjingshui changed the title self-host mac runner fails when Create additional symlinks self-hosted mac runner fails when Create additional symlinks Feb 26, 2025
@priyagupta108
Copy link
Contributor

Hi @deanjingshui 👋,
Thank you for reporting this issue. We will investigate it and get back to you as soon as we have some feedback.

@priyagupta108
Copy link
Contributor

Hi @deanjingshui,
We tried to reproduce the issue on our end but were unable to do so. It appears to be related to the configuration of your macOS self-hosted runner. Based on the error message, it seems the issue may be caused by insufficient permissions for the runner user. To resolve this, please follow these troubleshooting steps:

  1. Ensure the directory /Users/runner/hostedtoolcache exists and has the correct permissions:
sudo mkdir -p /Users/runner/hostedtoolcache

sudo chown runner-user:runner-group /Users/runner/hostedtoolcache
  1. Verify that the runner user has the necessary permissions to create symlinks in the /Users/runner/hostedtoolcache directory. You can check the current user and group that the runner belongs to by typing ls -l inside the runner's root directory.


For detailed guidance and further instructions on configuring setup-python with a macOS self-hosted runner, please refer to the documentation to ensure proper setup.

If the issue persists after following these steps, please let us know, and provide a reproducible link or additional logs with debug mode enabled. You can enable debug logging in GitHub Actions by following the instructions in the official documentation. This will help us investigate the issue further.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants