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

Not able to find node12 #72

Closed
bhvngt opened this issue Jul 29, 2021 · 9 comments
Closed

Not able to find node12 #72

bhvngt opened this issue Jul 29, 2021 · 9 comments
Labels
bug Something isn't working

Comments

@bhvngt
Copy link

bhvngt commented Jul 29, 2021

Describe the bug
While Running Runner.client, following error is thrown

OCI runtime exec failed: exec failed: container_linux.go:380: starting container process caused: exec: "/__e/linux/amd64/node12/bin/node": stat /__e/linux/amd64/node12/bin/node: no such file or directory: unknown

To Reproduce
Steps to reproduce the behavior:

  1. Go to
  2. Run 'Runner.client'
  3. See error

Expected behavior
To complete the run successfully

Runner Version and Platform

Version of your runner? 3.2.1

OS of the machine running the runner? OSX/Windows/Linux/... OSX

What's not working?

OCI runtime exec failed: exec failed: container_linux.go:380: starting container process caused: exec: "/__e/linux/amd64/node12/bin/node": stat /__e/linux/amd64/node12/bin/node: no such file or directory: unknown

Job Log Output

log output

Runner and Worker's Diagnostic Logs

github action

name: CI

on: push

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
@bhvngt bhvngt added the bug Something isn't working label Jul 29, 2021
@ChristopherHX
Copy link
Owner

ChristopherHX commented Jul 29, 2021

I'm unable to reproduce this problem (macOS 10.14), I need your help to identify the problem on your system.

  • post the output of ls -l /usr/local/opt/github-actions-runner/actions-runner/externals/linux/amd64/node12/bin to see permissions on macOS
  • Post the output of the following workflow to see permissions on Linux (Docker)
name: CI

on: push

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - run: ls -l /__e/linux/amd64/node12/bin
  • Run sudo rm -rf /usr/local/opt/github-actions-runner/actions-runner/externals/, to let the runner downloading a fresh copy of node (even if any previous point fails to run)
  • Run Runner.Client again and post the output.

I hope to find a way to autofix this error inside the Runner.

Edit

  • Post the output of the following workflow to see architecture on Linux (Docker)
name: CI

on: push

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - run: uname -a
  • Which tar version do you have? tar --version
    • bsdtar 2.8.3 - libarchive 2.8.3 worked for me.

@bhvngt
Copy link
Author

bhvngt commented Jul 29, 2021

Thanks @ChristopherHX.

Here you go

output of ls -l /usr/local/opt/github-actions-runner/actions-runner/externals/linux/amd64/node12/bin on OSX

total 44540
-rwxr-xr-x 1 Bhavin admin 45605784 Nov 19  2019 node
lrwxr-xr-x 1 Bhavin admin       38 Nov 19  2019 npm -> ../lib/node_modules/npm/bin/npm-cli.js
lrwxr-xr-x 1 Bhavin admin       38 Nov 19  2019 npx -> ../lib/node_modules/npm/bin/npx-cli.js

Ran
sudo rm -rf /usr/local/opt/github-actions-runner/actions-runner/externals/

Ran Runner.Client with following job

name: CI

on: push

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - run: uname -a
      - run: ls -l /__e/linux/amd64/node12/bin

Here's the output
Job Log Output

I have following tar version
bsdtar 3.3.2 - libarchive 3.3.2 zlib/1.2.11 liblzma/5.0.5 bz2lib/1.0.6

@bhvngt
Copy link
Author

bhvngt commented Jul 29, 2021

I ran tar xvf actions-runner-osx-x64-3.2.1.tar.gz inside /usr/local/opt/github-actions-runner/actions-runner

it was successful. After that I ran the job once again and got the same error.

@ChristopherHX
Copy link
Owner

I'm confused that mounting your non empty /usr/local/opt/github-actions-runner/actions-runner/externals don't work.

Could you please try to extracting the runner in your Home folder and not in opt ?e.g.
Open your home folder then

# Create a folder
mkdir actions-runner && cd actions-runner
# Download the latest runner package
curl -O -L https://github.com/ChristopherHX/runner.server/releases/download/v3.2.1/actions-runner-osx-x64-3.2.1.tar.gz
# Extract the installer
tar xzf ./actions-runner-osx-x64-3.2.1.tar.gz

And try run your workflow with this one?

@ChristopherHX
Copy link
Owner

ChristopherHX commented Jul 29, 2021

Does this work? Just mounting it with docker not the runner

docker run -it --rm -v /usr/local/opt/github-actions-runner/actions-runner/externals:/__e:ro catthehacker/ubuntu:act-latest
ls -l -R /__e

EDIT
Docker cannot mount /usr/local/opt/github-actions-runner/actions-runner/externals, it is an empty folder in this case.

@ChristopherHX
Copy link
Owner

ChristopherHX commented Jul 29, 2021

Wait really? extracting the runner in /usr/local/opt/github-actions-runner/actions-runner doesn't work, maybe docker has no permission to bind mount that folder.
~/Downloads/runner works for me

Related issue: docker/for-mac#3582

You need to store this runner in whitelisted locations:
https://stackoverflow.com/questions/45122459/mounts-denied-the-paths-are-not-shared-from-os-x-and-are-not-known-to-docke

@bhvngt
Copy link
Author

bhvngt commented Jul 29, 2021

ohh.. got it... It wasn't listed as part of file sharing in my docker config. After adding that I ran this successfully. Thanks a lot @ChristopherHX

@bhvngt
Copy link
Author

bhvngt commented Jul 29, 2021

I will close this issue. Guess it will be worthwhile to capture that the installation directory needs to be accessible to docker file sharing in readme.

Thank you very much for this great time-saving project.

@bhvngt bhvngt closed this as completed Jul 29, 2021
@ChristopherHX
Copy link
Owner

I updated the ReadMe to reflect your issue. The official runner blocks docker on macOS runners, therefore this limitation is only relevant for this fork.

Uses in Composite Actions Ready for Experiments :) in 3.2.2

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