Skip to content

Broken on Github's ubuntu-latest runner #88

Closed
@theCalcaholic

Description

@theCalcaholic

Behaviour

Steps to reproduce this issue

  1. Create a workflow with the following job:
    jobs:
      setup-qemu:
        runs-on: ubuntu-latest # or ubuntu-22.04
        steps:
          - name: setup qemu
            uses: docker/setup-buildx-action@v2
  2. Run the workflow

Expected behaviour

setup-qemu-action should setup binfmt and qemu successfully.

Actual behaviour

The job fails with:

> Run docker/setup-qemu-action@v2
> Docker info
> Pulling binfmt Docker image
> Image info
> Installing QEMU static binaries
  /usr/bin/docker run --rm --privileged tonistiigi/binfmt:latest --install all
  error: operation not permitted
  cannot mount binfmt_misc filesystem at /proc/sys/fs/binfmt_misc
  main.run
  	/src/cmd/binfmt/main.go:183
  main.main
  	/src/cmd/binfmt/main.go:170
  runtime.main
  	/usr/local/go/src/runtime/proc.go:250
  runtime.goexit
  	/usr/local/go/src/runtime/asm_amd64.s:1571
> Extracting available platforms
Error: Unexpected end of JSON input

Configuration

YAML workflow file (shortened to the relevant portion):

name: 'Docker Integration Tests and Release'

on:
  workflow_call:
    inputs:
      git_ref:
        required: true
        type: string
      arch:
        required: false
        type: string
        default: 'x86'
  push:
    branches:
      - docker-stable
      - docker-devel
  pull_request:
    branches:
      - docker-stable
      - docker-devel
      - release/docker/*

jobs:
  build:
    if: ${{ github.repository == 'nextcloud/nextcloudpi' }}
    runs-on: ubuntu-latest
    env:
      VERSION: "${{ inputs.git_ref || github.ref }}"
      ARCH: "${{ inputs.arch || 'x86' }}"
      LOG_DCKR: "\\033[1;34mDCKR::\\033[0m"
      LOG_NCP: "\\033[1;36m~NCP::\\033[0m"
      LOG_CICD: "\\033[1;35mCICD::\\033[0m"
      LOG_TEST: "\\033[1;33mTEST::\\033[0m"
      LOG_DIAG: "\\033[1;31mDIAG::\\033[0m"
    steps:
      - name: Setup Docker Buildx
        uses: docker/setup-buildx-action@v2

      - name: Set up QEMU
        uses: docker/setup-qemu-action@v2

      - name: Checkout code
        uses: actions/checkout@v3
        with:
          ref: "${{ env.VERSION }}"

      - name: Login to docker
        run: |
          echo "${{ secrets.DOCKER_PASSWORD_INTERNAL }}" | docker login -u "${{ secrets.DOCKER_LOGIN_INTERNAL }}" --password-stdin

      - name: Build images
        id: build-container
        run: |
          ./build/build-docker.sh "${ARCH?}"
          docker tag "ownyourbits/nextcloudpi-${ARCH?}:latest" "thecalcaholic/ncp-internal-${ARCH?}:${{ github.run_id }}"
          testing_image="ownyourbits/nextcloudpi-${ARCH?}:latest"
          [[ "${ARCH?}" == "x86" ]] || testing_image="ownyourbits/ncp-qemu-fix-${ARCH?}:latest"
          docker tag "${testing_image}" "thecalcaholic/ncp-internal-${ARCH?}:${{ github.run_id }}-testing"
          docker push "thecalcaholic/ncp-internal-${ARCH?}:${{ github.run_id }}"
          docker push "thecalcaholic/ncp-internal-${ARCH?}:${{ github.run_id }}-testing"

Logs

setup-qemu-action-logs.zip

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions