EXDEV: cross-device link not permitted

I am seeing this issue, since this morning. Can you please help me solve this? Everything was working before.

https://github.com/kubedb/redis/pull/161/checks?check_run_id=697942697

downloading kind from https://github.com/kubernetes-sigs/kind/releases/download/v0.8.1/kind-linux-amd64
chmod +x /home/runner/work/_temp/2eecb160-a46e-44cf-9217-e333cb604de4
##[error]EXDEV: cross-device link not permitted, rename ‘/home/runner/work/_temp/2eecb160-a46e-44cf-9217-e333cb604de4’ -> ‘/home/runner/bin/kind’

1 Like

Our repo using Typescript shows the same error.

$ tsc -p tsconfig.node.json
$ yarn build
$ run-s build:*
$ yarn gqlgen
$ graphql-codegen --config codegen.yml
[01:14:08] Parse configuration [started]
[01:14:08] Parse configuration [completed]
[01:14:08] Generate outputs [started]
[01:14:08] Generate src/generated/graphql.ts [started]
[01:14:08] Load GraphQL schemas [started]
[01:14:08] Load GraphQL schemas [completed]
[01:14:08] Load GraphQL documents [started]
[01:14:08] Load GraphQL documents [completed]
[01:14:08] Generate [started]
[01:14:09] Generate [completed]
[01:14:09] Generate src/generated/graphql.ts [completed]
[01:14:09] Generate outputs [completed]
$ tsc --project tsconfig.build.json
EXDEV: cross-device link not permitted, rename '/tmp/tmp-3975YxbIAZ546B71' -> 'out'
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
##[error]Process completed with exit code 1.

I’ve got the same issue for https://github.com/crazy-max/ghaction-docker-buildx

Since virtual environment ubuntu-18.04 20200518.1, /home/runner/work is another partition /dev/sdb1, so rename or links returns this kind of error.

So to solve this, use copy instead of rename.

If it concerns temp files, override TMPDIR env var with home/runner/_temp/tmp

name: build

on:
  push:
  pull_request:

env:
  TMPDIR: /home/runner/work/_temp/tmp

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      -
        name: Checkout
        uses: actions/checkout@v2
      -
        name: Prepare
        run: |
          mkdir -p $TMPDIR

More info: https://github.com/goreleaser/goreleaser/pull/1545

1 Like

@tamalsaha @joonsungum @crazy-max ,

I have created an issue ticket (actions/virtual-environments#922) to report this problem to the appropriate engineering team for further investigation and evaluation.

You can follow this issue ticket and add your comments on it.

3 Likes