Skip to content

File permission error when doing cleanup post-step on gpu-t4-4-core runner #178

@qthequartermasterman

Description

@qthequartermasterman

Contributing guidelines

I've found a bug, and:

  • The documentation does not mention anything about my problem
  • There are no open or closed issues that are related to my problem

Description

When I attempt to use this action on a gpu-t4-4-core, I get this error in the Post Set up Docker (cleanup) step:

Post job cleanup.
Docker daemon logs
Error: EACCES: permission denied, open '/home/runner/setup-docker-action/run-2eab05d5/dockerd.log'
    at Object.runDir [as readFileSync] (node:fs:449:20)
    at Install.__importDefault (/home/runner/work/_actions/docker/setup-docker-action/v4/webpack:/docker-setup-docker/node_modules/@docker/actions-toolkit/lib/docker/install.js:529:1)
    at Generator.next (<anonymous>)
    at /home/runner/work/_actions/docker/setup-docker-action/v4/webpack:/docker-setup-docker/node_modules/@docker/actions-toolkit/lib/docker/install.js:59:1
    at new Promise (<anonymous>)
    at core (/home/runner/work/_actions/docker/setup-docker-action/v4/webpack:/docker-setup-docker/node_modules/@docker/actions-toolkit/lib/docker/install.js:53:1)
    at exports (/home/runner/work/_actions/docker/setup-docker-action/v4/webpack:/docker-setup-docker/node_modules/@docker/actions-toolkit/lib/docker/install.js:529:1)
    at Object.exports (/home/runner/work/_actions/docker/setup-docker-action/v4/webpack:/docker-setup-docker/node_modules/@actions/core/lib/core.js:288:1)
    at Generator.next (<anonymous>)
    at /home/runner/work/_actions/docker/setup-docker-action/v4/webpack:/docker-setup-docker/node_modules/@actions/core/lib/core.js:34:1

This is during the cleanup of the action. Everything before this final step works as expected. I only see it when using the official Github Actions gpu-t4-4-core runner (i.e. others like ubuntu-latest works fine).

Because the cleanup fails, my CI jobs are marked as failures, even though all of the main actions worked as expected.

Expected behaviour

Clean up succeeds on gpu-t4-4-core.

Actual behaviour

Clean up fails with Error: EACCES: permission denied, open '/home/runner/setup-docker-action/run-2eab05d5/dockerd.log'

Repository URL

No response

Workflow run URL

No response

YAML workflow

This is a redacted version of the workflow that has sensitive information. This isn't the exact workflow I'm running. 


---
name: Build Image

on:
  workflow_call:
    inputs:

permissions:
  id-token: write
  contents: read

jobs:
  build_image:
    timeout-minutes: 40
    strategy:
      fail-fast: false
      matrix:
        os: ["gpu-t4-4-core"]
        python-version: ["3.12"]
    runs-on: ${{ matrix.os }}
    services:
      registry:
        image: registry:3
        ports:
          - 5000:5000
    steps:
      - name: Set up Docker
        uses: docker/setup-docker-action@v4
        with:
          daemon-config: |
            {
              "debug": true,
              "features": {
                "containerd-snapshotter": true
              }
            }
      # Set up QEMU so that we can build arm images on x86 runners
      - name: Set up QEMU
        uses: docker/setup-qemu-action@v3
      - name: Set up Docker Buildx
        uses: docker/setup-buildx-action@v3
      - name: Lint Dockerfile
        uses: hadolint/[email protected]
        with:
          dockerfile: Dockerfile

Workflow logs

No response

Docker daemon logs


Additional info

I have had similar issues in the past with the gpu-t4-4-core runner and other actions. This is an example: Jimver/cuda-toolkit#373

The solution in that case was for the action to ensure that users other than root can read the log files.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions