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

Working on docker + dotnet builds with both QUS and setup-qemu-action. Qus throws segmentation fault. #10

Open
devedse opened this issue Apr 14, 2021 · 0 comments

Comments

@devedse
Copy link

devedse commented Apr 14, 2021

Hey,

I'm currently trying to setup some builds for quite a complex thing I'm working on (an image optimizer which runs x86 windows applications in an ARM linux container).

I actually managed to get it all working. The strange thing is though that for some reason I can only get the build to work with the github actions task named: setup-qemu-action. Whereas I can only get running the container working with qus.

If I build the container using qus then I run into a Segmentation fault. If I run the container with setup-qemu-action I also run into a segmentation fault.

This issue I'd like to focus on building the container is not working with qus but it is working with the github task setup-qemu-action.

Here's the build where you can see it going wrong:
https:/devedse/DeveImageOptimizer/runs/2343006390?check_suite_focus=true

The yaml:

  build_docker_linux_qusbuild:
    needs: generate_version_number
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    - name: Login to Docker Hub
      uses: docker/login-action@v1
      with:
        username: devedse
        password: ${{ secrets.DOCKERHUBTOKEN }}
    - name: Setup qus
      run: |
        docker run --rm --privileged aptman/qus -s -- -p
    - name: Set up Docker Buildx
      id: buildx
      uses: docker/setup-buildx-action@v1
    - name: Builder instance name
      run: echo ${{ steps.buildx.outputs.name }}
    - name: Available platforms
      run: echo ${{ steps.buildx.outputs.platforms }}
    - name: Run Buildx
      run: |
        export VERSION=1.0.${{needs.generate_version_number.outputs.build_number}}
        echo Version: $VERSION
        docker buildx build -f DeveImageOptimizer.ConsoleApp/Linux.Dockerfile --build-arg BUILD_VERSION=$VERSION --platform linux/arm64,linux/amd64 -t devedse/deveimageoptimizerconsoleapp:${{needs.generate_version_number.outputs.build_number}} -t devedse/deveimageoptimizerconsoleapp:latest --push .

Build output:

#24 [linux/arm64 build 9/9] RUN dotnet build "DeveImageOptimizer.ConsoleApp.csproj" -c Release -o /app/build
#24 sha256:448b9fe5ecc129143fcabee60dc530e38619eb2a6a7b5413e1edebca8e4afd0f
#24 67.45 /usr/share/dotnet/sdk/5.0.202/Roslyn/Microsoft.CSharp.Core.targets(71,5): error : qemu: uncaught target signal 11 (Segmentation fault) - core dumped [/src/DeveImageOptimizer/DeveImageOptimizer.csproj]
#24 68.04 
#24 68.04 Build FAILED.
#24 68.04 
#24 68.04 /usr/share/dotnet/sdk/5.0.202/Roslyn/Microsoft.CSharp.Core.targets(71,5): error : qemu: uncaught target signal 11 (Segmentation fault) - core dumped [/src/DeveImageOptimizer/DeveImageOptimizer.csproj]
#24 68.04     0 Warning(s)
#24 68.04     1 Error(s)
#24 68.05 
#24 68.05 Time Elapsed 00:00:47.97
#24 ERROR: executor failed running [/bin/sh -c dotnet build "DeveImageOptimizer.ConsoleApp.csproj" -c Release -o /app/build]: exit code: 1

#9 [linux/arm64 base  5/10] RUN if [ "linux/arm64" = "linux/arm64" ]; then         git clone --depth 1 --recurse-submodules -j8 https:/devedse/hangover.git /root/hangover ;     fi
#9 sha256:98348fc916409de984e4adf6413ee670780870ea54fca0ab5a77b62aa1eecdc6
#9 CANCELED
------
 > [linux/arm64 build 9/9] RUN dotnet build "DeveImageOptimizer.ConsoleApp.csproj" -c Release -o /app/build:
------
Linux.Dockerfile:91
--------------------
  89 |     COPY . .
  90 |     WORKDIR "/src/DeveImageOptimizer.ConsoleApp"
  91 | >>> RUN dotnet build "DeveImageOptimizer.ConsoleApp.csproj" -c Release -o /app/build
  92 |     
  93 |     FROM build AS publish
--------------------
error: failed to solve: rpc error: code = Unknown desc = executor failed running [/bin/sh -c dotnet build "DeveImageOptimizer.ConsoleApp.csproj" -c Release -o /app/build]: exit code: 1
Error: Process completed with exit code 1.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant