dotnet / runtime

.NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
https://docs.microsoft.com/dotnet/core/
MIT License
15.17k stars 4.72k forks source link

`CreateAppHost` fails when building in a bound volume directory inside a dotnet/sdk container #94961

Open kidq330 opened 11 months ago

kidq330 commented 11 months ago

Description

My container engine is podman, running on MacOS 14.1. I tried two containers, dotnet/sdk with SDK 8.0 and a devcontainers image with SDK 7.0. I can dotnet new console in any directory inside the container, but dotnet build succeeds in all except those that are subdirs of the bound directory. Setting the podman machine to rootful does not fix the issue,

Reproduction Steps

Logs from the two containers I tested on:

mcr.microsoft.com/dotnet/sdk:8.0.100-1-bookworm-slim-amd64

kidp330@MacBook-Pro-Kuba ~ % mkdir repo                    
kidp330@MacBook-Pro-Kuba ~ % docker image ls                                                    
REPOSITORY                              TAG             IMAGE ID      CREATED       SIZE
mcr.microsoft.com/dotnet/sdk            latest          bb9bebd66b37  16 hours ago  845 MB
docker.io/library/rust                  latest          68ce12c6ea1a  2 days ago    1.49 GB
mcr.microsoft.com/devcontainers/dotnet  1-7.0-bullseye  8f132fca64bb  2 days ago    1.34 GB
ghcr.io/livebook-dev/livebook           latest          56037244a320  9 days ago    620 MB
kidp330@MacBook-Pro-Kuba ~ % docker run -dt --name=test8 --pull=always --volume=$HOME/repo:/app mcr.microsoft.com/dotnet/sdk
Trying to pull mcr.microsoft.com/dotnet/sdk:latest...
Getting image source signatures
Copying blob sha256:88e622ea1fdf216299c152286eaad38c5cab5994b4eecbea326a36b26e2c8f54
Copying blob sha256:578acb154839e9d0034432e8f53756d6f53ba62cf8c7ea5218a2476bf5b58fc9
Copying blob sha256:b5c13ee662c35d35968b2f5b551d00f381cdbfaf913250b092ee1c26f90ab07e
Copying blob sha256:b87d321f96b647df074dfa0e9e3b55d4fc31d54c20fc5c4a2a729f922b610790
Copying blob sha256:27ff45226a4f5002e32cdceb9f75f9b76186f8e22fce8353971566b7c545e1b9
Copying blob sha256:8543982bc2b334aa9a0c115ac8cdc059fbe32595f6154ad889a963ab39041d26
Copying blob sha256:deff372137179efabc8725bc8ce6525ef0ad1c4e5ab204567910f14565dd72ec
Copying blob sha256:0acb879b400f61145e7817e77566552ee0e700331653675c9f3ac5dfa08844f5
Copying blob sha256:9b0191e154388074566e23565eb927df1c6a7494458b7b42a94c898e291dfd06
Copying config sha256:bb9bebd66b3722f29d0f88c32fcbe6aa7d2ecccf39d358b39f1fa28b34de6943
Writing manifest to image destination
882092c3549bf76cf6b65b68307589754a1d182aeb50df6d81f76ab9b92c6b54
kidp330@MacBook-Pro-Kuba ~ % docker exec --workdir=/app/ -- test8 bash -c "dotnet --info && dotnet new console && dotnet build"
.NET SDK:
 Version:           8.0.100
 Commit:            57efcf1350
 Workload version:  8.0.100-manifests.6c33ef20

Runtime Environment:
 OS Name:     debian
 OS Version:  12
 OS Platform: Linux
 RID:         linux-x64
 Base Path:   /usr/share/dotnet/sdk/8.0.100/

.NET workloads installed:
 Workload version: 8.0.100-manifests.6c33ef20
There are no installed workloads to display.

Host:
  Version:      8.0.0
  Architecture: x64
  Commit:       5535e31a71

.NET SDKs installed:
  8.0.100 [/usr/share/dotnet/sdk]

.NET runtimes installed:
  Microsoft.AspNetCore.App 8.0.0 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 8.0.0 [/usr/share/dotnet/shared/Microsoft.NETCore.App]

Other architectures found:
  None

Environment variables:
  Not set

global.json file:
  Not found

Learn more:
  https://aka.ms/dotnet/info

Download .NET:
  https://aka.ms/dotnet/download
The template "Console App" was created successfully.

Processing post-creation actions...
Restoring /app/app.csproj:
  Determining projects to restore...
  Restored /app/app.csproj (in 393 ms).
Restore succeeded.

MSBuild version 17.8.3+195e7f5a3 for .NET
  Determining projects to restore...
  All projects are up-to-date for restore.

/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: The "CreateAppHost" task failed unexpectedly. [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: System.IO.IOException: Invalid argument [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at System.IO.MemoryMappedFiles.MemoryMappedView.CreateView(SafeMemoryMappedFileHandle memMappedFileHandle, MemoryMappedFileAccess access, Int64 requestedOffset, Int64 requestedSize) [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.NET.HostModel.AppHost.MachOUtils.RemoveSignature(FileStream stream) [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.NET.HostModel.AppHost.HostWriter.<>c__DisplayClass2_0.<CreateAppHost>b__1() [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.NET.HostModel.RetryUtil.RetryOnIOError(Action func) [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.NET.HostModel.AppHost.HostWriter.CreateAppHost(String appHostSourceFilePath, String appHostDestinationFilePath, String appBinaryFilePath, Boolean windowsGraphicalUserInterface, String assemblyToCopyResourcesFrom, Boolean enableMacOSCodeSign) [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.NET.Build.Tasks.CreateAppHost.ExecuteCore() [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.NET.Build.Tasks.TaskBase.Execute() [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost, TaskLoggingContext taskLoggingContext, TaskHost taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask) [/app/app.csproj]

Build FAILED.

/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: The "CreateAppHost" task failed unexpectedly. [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: System.IO.IOException: Invalid argument [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at System.IO.MemoryMappedFiles.MemoryMappedView.CreateView(SafeMemoryMappedFileHandle memMappedFileHandle, MemoryMappedFileAccess access, Int64 requestedOffset, Int64 requestedSize) [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.NET.HostModel.AppHost.MachOUtils.RemoveSignature(FileStream stream) [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.NET.HostModel.AppHost.HostWriter.<>c__DisplayClass2_0.<CreateAppHost>b__1() [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.NET.HostModel.RetryUtil.RetryOnIOError(Action func) [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.NET.HostModel.AppHost.HostWriter.CreateAppHost(String appHostSourceFilePath, String appHostDestinationFilePath, String appBinaryFilePath, Boolean windowsGraphicalUserInterface, String assemblyToCopyResourcesFrom, Boolean enableMacOSCodeSign) [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.NET.Build.Tasks.CreateAppHost.ExecuteCore() [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.NET.Build.Tasks.TaskBase.Execute() [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost, TaskLoggingContext taskLoggingContext, TaskHost taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask) [/app/app.csproj]
    0 Warning(s)
    1 Error(s)

Time Elapsed 00:01:00.80
kidp330@MacBook-Pro-Kuba ~ % mkdir repo                                                                                                              
kidp330@MacBook-Pro-Kuba ~ % docker run -dt --name=test7 --pull=always --volume=$HOME/repo:/app mcr.microsoft.com/devcontainers/dotnet:1-7.0-bullseye
Trying to pull mcr.microsoft.com/devcontainers/dotnet:1-7.0-bullseye...
Getting image source signatures
Copying blob sha256:1bc79da9412fe139a000b9d28f81c2f8fed6e3314c886f474cae11f757ebb752
Copying blob sha256:0bc8ff246cb8ff91066742f8f7ded40397e7aaaa925200b7bec5382d1ffcd6a0
Copying blob sha256:76940af183830cbd6864465abc88c2837efe39136d6acac8c1a6558362a92c04
Copying blob sha256:09caf63e17c0d596f4389424369dfb4b192843788339cf990ff6a88254277dc7
Copying blob sha256:141b2765ba417a76927bc048f2d3bc139dd3d69403335f523249088aa1f0c714
Copying blob sha256:6a1b5510888f1ade5bfc15cdff37fbb5c9b2affae8ee456e4850f0bdbf331560
Copying blob sha256:2b331be7bed9204337b399eb1c7dee88402cfcb1b8c6216b56e07c571dd383d3
Copying blob sha256:00a8de677ed7f64bfb45365b935a51cb17dcbdc68066f0f67295dbb442e6d883
Copying blob sha256:b95b492fdac0e0bad1ced2d9cac52ef135ecb8312debfa29f7b502770f3fe53c
Copying blob sha256:01f9d888cb8adfc316dbda1c0511c0d84c3bc7c615430cc9a3cd0f32ea75135e
Copying blob sha256:676d6375e84d282d58ceb561bf92ee8c93c90e021d4361f37a6a2b3db69a4f80
Copying blob sha256:6ca3a9910dde664e33c9fec59e28cc1ac5b6f2a455cc22f420b4e2a9df2e9efe
Copying blob sha256:7ba22011df8103bfd4b89fb86d33dfe30576b82f1d49d62691a0a3a85882b9c8
Copying blob sha256:d8f14775c8c1cb2bf1b88a6e2a2f62af009b33f77ef3cfb184032e88616df0b3
Copying blob sha256:1867307e1fe5effb9f647ce1008e8b7e4db75bf44d8542f342751492ff6cb44b
Copying config sha256:8f132fca64bb2f542df1235ec2de1d128045fc304e8392f367b77e2836bd202d
Writing manifest to image destination
1fae25947f0bdb9ab57043afc20b2ed2e41dc5dab0cc6f92a91ea272fdf5cfa8
kidp330@MacBook-Pro-Kuba ~ % docker exec --workdir=/app/ -- test7 bash -c "dotnet --info && dotnet new console && dotnet build"
.NET SDK:
 Version:   7.0.404
 Commit:    22f221a24c

Runtime Environment:
 OS Name:     debian
 OS Version:  11
 OS Platform: Linux
 RID:         debian.11-x64
 Base Path:   /usr/share/dotnet/sdk/7.0.404/

Host:
  Version:      7.0.14
  Architecture: x64
  Commit:       808851b07a

.NET SDKs installed:
  7.0.404 [/usr/share/dotnet/sdk]

.NET runtimes installed:
  Microsoft.AspNetCore.App 7.0.14 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 7.0.14 [/usr/share/dotnet/shared/Microsoft.NETCore.App]

Other architectures found:
  None

Environment variables:
  Not set

global.json file:
  Not found

Learn more:
  https://aka.ms/dotnet/info

Download .NET:
  https://aka.ms/dotnet/download
The template "Console App" was created successfully.

Processing post-creation actions...
Restoring /app/app.csproj:
  Determining projects to restore...
  Restored /app/app.csproj (in 76 ms).
Restore succeeded.

MSBuild version 17.7.4+3ebbd7c49 for .NET
  Determining projects to restore...
  All projects are up-to-date for restore.
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: The "CreateAppHost" task failed unexpectedly. [/app/app.csproj]
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: System.IO.IOException: Invalid argument [/app/app.csproj]
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018:    at System.IO.MemoryMappedFiles.MemoryMappedView.CreateView(SafeMemoryMappedFileHandle memMappedFileHandle, MemoryMappedFileAccess access, Int64 requestedOffset, Int64 requestedSize) [/app/app.csproj]
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018:    at System.IO.MemoryMappedFiles.MemoryMappedFile.CreateViewAccessor(Int64 offset, Int64 size, MemoryMappedFileAccess access) [/app/app.csproj]
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018:    at Microsoft.NET.HostModel.AppHost.MachOUtils.RemoveSignature(FileStream stream) [/app/app.csproj]
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018:    at Microsoft.NET.HostModel.AppHost.HostWriter.<>c__DisplayClass2_0.<CreateAppHost>b__2() [/app/app.csproj]
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018:    at Microsoft.NET.HostModel.RetryUtil.RetryOnIOError(Action func) [/app/app.csproj]
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018:    at Microsoft.NET.HostModel.AppHost.HostWriter.CreateAppHost(String appHostSourceFilePath, String appHostDestinationFilePath, String appBinaryFilePath, Boolean windowsGraphicalUserInterface, String assemblyToCopyResourcesFrom, Boolean enableMacOSCodeSign) [/app/app.csproj]
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018:    at Microsoft.NET.Build.Tasks.CreateAppHost.ExecuteCore() [/app/app.csproj]
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018:    at Microsoft.NET.Build.Tasks.TaskBase.Execute() [/app/app.csproj]
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018:    at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() [/app/app.csproj]
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018:    at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost, TaskLoggingContext taskLoggingContext, TaskHost taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask) [/app/app.csproj]

Build FAILED.

/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: The "CreateAppHost" task failed unexpectedly. [/app/app.csproj]
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: System.IO.IOException: Invalid argument [/app/app.csproj]
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018:    at System.IO.MemoryMappedFiles.MemoryMappedView.CreateView(SafeMemoryMappedFileHandle memMappedFileHandle, MemoryMappedFileAccess access, Int64 requestedOffset, Int64 requestedSize) [/app/app.csproj]
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018:    at System.IO.MemoryMappedFiles.MemoryMappedFile.CreateViewAccessor(Int64 offset, Int64 size, MemoryMappedFileAccess access) [/app/app.csproj]
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018:    at Microsoft.NET.HostModel.AppHost.MachOUtils.RemoveSignature(FileStream stream) [/app/app.csproj]
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018:    at Microsoft.NET.HostModel.AppHost.HostWriter.<>c__DisplayClass2_0.<CreateAppHost>b__2() [/app/app.csproj]
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018:    at Microsoft.NET.HostModel.RetryUtil.RetryOnIOError(Action func) [/app/app.csproj]
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018:    at Microsoft.NET.HostModel.AppHost.HostWriter.CreateAppHost(String appHostSourceFilePath, String appHostDestinationFilePath, String appBinaryFilePath, Boolean windowsGraphicalUserInterface, String assemblyToCopyResourcesFrom, Boolean enableMacOSCodeSign) [/app/app.csproj]
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018:    at Microsoft.NET.Build.Tasks.CreateAppHost.ExecuteCore() [/app/app.csproj]
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018:    at Microsoft.NET.Build.Tasks.TaskBase.Execute() [/app/app.csproj]
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018:    at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() [/app/app.csproj]
/usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018:    at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost, TaskLoggingContext taskLoggingContext, TaskHost taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask) [/app/app.csproj]
    0 Warning(s)
    1 Error(s)

Time Elapsed 00:01:00.43

Expected behavior

The Hello World project builds successfully

Actual behavior

Build fails with the following exception:

/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: The "CreateAppHost" task failed unexpectedly. [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: System.IO.IOException: Invalid argument [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at System.IO.MemoryMappedFiles.MemoryMappedView.CreateView(SafeMemoryMappedFileHandle memMappedFileHandle, MemoryMappedFileAccess access, Int64 requestedOffset, Int64 requestedSize) [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.NET.HostModel.AppHost.MachOUtils.RemoveSignature(FileStream stream) [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.NET.HostModel.AppHost.HostWriter.<>c__DisplayClass2_0.<CreateAppHost>b__1() [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.NET.HostModel.RetryUtil.RetryOnIOError(Action func) [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.NET.HostModel.AppHost.HostWriter.CreateAppHost(String appHostSourceFilePath, String appHostDestinationFilePath, String appBinaryFilePath, Boolean windowsGraphicalUserInterface, String assemblyToCopyResourcesFrom, Boolean enableMacOSCodeSign) [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.NET.Build.Tasks.CreateAppHost.ExecuteCore() [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.NET.Build.Tasks.TaskBase.Execute() [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() [/app/app.csproj]
/usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018:    at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost, TaskLoggingContext taskLoggingContext, TaskHost taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask) [/app/app.csproj]
    0 Warning(s)
    1 Error(s)

Time Elapsed 00:01:00.80

Regression?

No response

Known Workarounds

Set UseAppHost to false

Configuration

No response

Other information

I have used the same setup with podman on ubuntu (and windows about a month ago), so this might turn out to be specific to macos

ghost commented 11 months ago

Tagging subscribers to this area: @vitek-karas, @agocke See info in area-owners.md if you want to be subscribed.

Issue Details
### Description My container engine is podman, running on MacOS 14.1. I tried two containers, dotnet/sdk with SDK 8.0 and a devcontainers image with SDK 7.0. I can `dotnet new console` in any directory inside the container, but `dotnet build` succeeds in all except those that are subdirs of the bound directory. Setting the podman machine to rootful does not fix the issue, ### Reproduction Steps Logs from the two containers I tested on: mcr.microsoft.com/dotnet/sdk:8.0.100-1-bookworm-slim-amd64 ``` kidp330@MacBook-Pro-Kuba ~ % mkdir repo kidp330@MacBook-Pro-Kuba ~ % docker image ls REPOSITORY TAG IMAGE ID CREATED SIZE mcr.microsoft.com/dotnet/sdk latest bb9bebd66b37 16 hours ago 845 MB docker.io/library/rust latest 68ce12c6ea1a 2 days ago 1.49 GB mcr.microsoft.com/devcontainers/dotnet 1-7.0-bullseye 8f132fca64bb 2 days ago 1.34 GB ghcr.io/livebook-dev/livebook latest 56037244a320 9 days ago 620 MB kidp330@MacBook-Pro-Kuba ~ % docker run -dt --name=test8 --pull=always --volume=$HOME/repo:/app mcr.microsoft.com/dotnet/sdk Trying to pull mcr.microsoft.com/dotnet/sdk:latest... Getting image source signatures Copying blob sha256:88e622ea1fdf216299c152286eaad38c5cab5994b4eecbea326a36b26e2c8f54 Copying blob sha256:578acb154839e9d0034432e8f53756d6f53ba62cf8c7ea5218a2476bf5b58fc9 Copying blob sha256:b5c13ee662c35d35968b2f5b551d00f381cdbfaf913250b092ee1c26f90ab07e Copying blob sha256:b87d321f96b647df074dfa0e9e3b55d4fc31d54c20fc5c4a2a729f922b610790 Copying blob sha256:27ff45226a4f5002e32cdceb9f75f9b76186f8e22fce8353971566b7c545e1b9 Copying blob sha256:8543982bc2b334aa9a0c115ac8cdc059fbe32595f6154ad889a963ab39041d26 Copying blob sha256:deff372137179efabc8725bc8ce6525ef0ad1c4e5ab204567910f14565dd72ec Copying blob sha256:0acb879b400f61145e7817e77566552ee0e700331653675c9f3ac5dfa08844f5 Copying blob sha256:9b0191e154388074566e23565eb927df1c6a7494458b7b42a94c898e291dfd06 Copying config sha256:bb9bebd66b3722f29d0f88c32fcbe6aa7d2ecccf39d358b39f1fa28b34de6943 Writing manifest to image destination 882092c3549bf76cf6b65b68307589754a1d182aeb50df6d81f76ab9b92c6b54 kidp330@MacBook-Pro-Kuba ~ % docker exec --workdir=/app/ -- test8 bash -c "dotnet --info && dotnet new console && dotnet build" .NET SDK: Version: 8.0.100 Commit: 57efcf1350 Workload version: 8.0.100-manifests.6c33ef20 Runtime Environment: OS Name: debian OS Version: 12 OS Platform: Linux RID: linux-x64 Base Path: /usr/share/dotnet/sdk/8.0.100/ .NET workloads installed: Workload version: 8.0.100-manifests.6c33ef20 There are no installed workloads to display. Host: Version: 8.0.0 Architecture: x64 Commit: 5535e31a71 .NET SDKs installed: 8.0.100 [/usr/share/dotnet/sdk] .NET runtimes installed: Microsoft.AspNetCore.App 8.0.0 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.NETCore.App 8.0.0 [/usr/share/dotnet/shared/Microsoft.NETCore.App] Other architectures found: None Environment variables: Not set global.json file: Not found Learn more: https://aka.ms/dotnet/info Download .NET: https://aka.ms/dotnet/download The template "Console App" was created successfully. Processing post-creation actions... Restoring /app/app.csproj: Determining projects to restore... Restored /app/app.csproj (in 393 ms). Restore succeeded. MSBuild version 17.8.3+195e7f5a3 for .NET Determining projects to restore... All projects are up-to-date for restore. /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: The "CreateAppHost" task failed unexpectedly. [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: System.IO.IOException: Invalid argument [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at System.IO.MemoryMappedFiles.MemoryMappedView.CreateView(SafeMemoryMappedFileHandle memMappedFileHandle, MemoryMappedFileAccess access, Int64 requestedOffset, Int64 requestedSize) [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.NET.HostModel.AppHost.MachOUtils.RemoveSignature(FileStream stream) [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.NET.HostModel.AppHost.HostWriter.<>c__DisplayClass2_0.b__1() [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.NET.HostModel.RetryUtil.RetryOnIOError(Action func) [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.NET.HostModel.AppHost.HostWriter.CreateAppHost(String appHostSourceFilePath, String appHostDestinationFilePath, String appBinaryFilePath, Boolean windowsGraphicalUserInterface, String assemblyToCopyResourcesFrom, Boolean enableMacOSCodeSign) [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.NET.Build.Tasks.CreateAppHost.ExecuteCore() [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.NET.Build.Tasks.TaskBase.Execute() [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost, TaskLoggingContext taskLoggingContext, TaskHost taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask) [/app/app.csproj] Build FAILED. /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: The "CreateAppHost" task failed unexpectedly. [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: System.IO.IOException: Invalid argument [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at System.IO.MemoryMappedFiles.MemoryMappedView.CreateView(SafeMemoryMappedFileHandle memMappedFileHandle, MemoryMappedFileAccess access, Int64 requestedOffset, Int64 requestedSize) [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.NET.HostModel.AppHost.MachOUtils.RemoveSignature(FileStream stream) [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.NET.HostModel.AppHost.HostWriter.<>c__DisplayClass2_0.b__1() [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.NET.HostModel.RetryUtil.RetryOnIOError(Action func) [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.NET.HostModel.AppHost.HostWriter.CreateAppHost(String appHostSourceFilePath, String appHostDestinationFilePath, String appBinaryFilePath, Boolean windowsGraphicalUserInterface, String assemblyToCopyResourcesFrom, Boolean enableMacOSCodeSign) [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.NET.Build.Tasks.CreateAppHost.ExecuteCore() [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.NET.Build.Tasks.TaskBase.Execute() [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost, TaskLoggingContext taskLoggingContext, TaskHost taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask) [/app/app.csproj] 0 Warning(s) 1 Error(s) Time Elapsed 00:01:00.80 ``` ``` kidp330@MacBook-Pro-Kuba ~ % mkdir repo kidp330@MacBook-Pro-Kuba ~ % docker run -dt --name=test7 --pull=always --volume=$HOME/repo:/app mcr.microsoft.com/devcontainers/dotnet:1-7.0-bullseye Trying to pull mcr.microsoft.com/devcontainers/dotnet:1-7.0-bullseye... Getting image source signatures Copying blob sha256:1bc79da9412fe139a000b9d28f81c2f8fed6e3314c886f474cae11f757ebb752 Copying blob sha256:0bc8ff246cb8ff91066742f8f7ded40397e7aaaa925200b7bec5382d1ffcd6a0 Copying blob sha256:76940af183830cbd6864465abc88c2837efe39136d6acac8c1a6558362a92c04 Copying blob sha256:09caf63e17c0d596f4389424369dfb4b192843788339cf990ff6a88254277dc7 Copying blob sha256:141b2765ba417a76927bc048f2d3bc139dd3d69403335f523249088aa1f0c714 Copying blob sha256:6a1b5510888f1ade5bfc15cdff37fbb5c9b2affae8ee456e4850f0bdbf331560 Copying blob sha256:2b331be7bed9204337b399eb1c7dee88402cfcb1b8c6216b56e07c571dd383d3 Copying blob sha256:00a8de677ed7f64bfb45365b935a51cb17dcbdc68066f0f67295dbb442e6d883 Copying blob sha256:b95b492fdac0e0bad1ced2d9cac52ef135ecb8312debfa29f7b502770f3fe53c Copying blob sha256:01f9d888cb8adfc316dbda1c0511c0d84c3bc7c615430cc9a3cd0f32ea75135e Copying blob sha256:676d6375e84d282d58ceb561bf92ee8c93c90e021d4361f37a6a2b3db69a4f80 Copying blob sha256:6ca3a9910dde664e33c9fec59e28cc1ac5b6f2a455cc22f420b4e2a9df2e9efe Copying blob sha256:7ba22011df8103bfd4b89fb86d33dfe30576b82f1d49d62691a0a3a85882b9c8 Copying blob sha256:d8f14775c8c1cb2bf1b88a6e2a2f62af009b33f77ef3cfb184032e88616df0b3 Copying blob sha256:1867307e1fe5effb9f647ce1008e8b7e4db75bf44d8542f342751492ff6cb44b Copying config sha256:8f132fca64bb2f542df1235ec2de1d128045fc304e8392f367b77e2836bd202d Writing manifest to image destination 1fae25947f0bdb9ab57043afc20b2ed2e41dc5dab0cc6f92a91ea272fdf5cfa8 kidp330@MacBook-Pro-Kuba ~ % docker exec --workdir=/app/ -- test7 bash -c "dotnet --info && dotnet new console && dotnet build" .NET SDK: Version: 7.0.404 Commit: 22f221a24c Runtime Environment: OS Name: debian OS Version: 11 OS Platform: Linux RID: debian.11-x64 Base Path: /usr/share/dotnet/sdk/7.0.404/ Host: Version: 7.0.14 Architecture: x64 Commit: 808851b07a .NET SDKs installed: 7.0.404 [/usr/share/dotnet/sdk] .NET runtimes installed: Microsoft.AspNetCore.App 7.0.14 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.NETCore.App 7.0.14 [/usr/share/dotnet/shared/Microsoft.NETCore.App] Other architectures found: None Environment variables: Not set global.json file: Not found Learn more: https://aka.ms/dotnet/info Download .NET: https://aka.ms/dotnet/download The template "Console App" was created successfully. Processing post-creation actions... Restoring /app/app.csproj: Determining projects to restore... Restored /app/app.csproj (in 76 ms). Restore succeeded. MSBuild version 17.7.4+3ebbd7c49 for .NET Determining projects to restore... All projects are up-to-date for restore. /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: The "CreateAppHost" task failed unexpectedly. [/app/app.csproj] /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: System.IO.IOException: Invalid argument [/app/app.csproj] /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: at System.IO.MemoryMappedFiles.MemoryMappedView.CreateView(SafeMemoryMappedFileHandle memMappedFileHandle, MemoryMappedFileAccess access, Int64 requestedOffset, Int64 requestedSize) [/app/app.csproj] /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: at System.IO.MemoryMappedFiles.MemoryMappedFile.CreateViewAccessor(Int64 offset, Int64 size, MemoryMappedFileAccess access) [/app/app.csproj] /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: at Microsoft.NET.HostModel.AppHost.MachOUtils.RemoveSignature(FileStream stream) [/app/app.csproj] /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: at Microsoft.NET.HostModel.AppHost.HostWriter.<>c__DisplayClass2_0.b__2() [/app/app.csproj] /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: at Microsoft.NET.HostModel.RetryUtil.RetryOnIOError(Action func) [/app/app.csproj] /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: at Microsoft.NET.HostModel.AppHost.HostWriter.CreateAppHost(String appHostSourceFilePath, String appHostDestinationFilePath, String appBinaryFilePath, Boolean windowsGraphicalUserInterface, String assemblyToCopyResourcesFrom, Boolean enableMacOSCodeSign) [/app/app.csproj] /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: at Microsoft.NET.Build.Tasks.CreateAppHost.ExecuteCore() [/app/app.csproj] /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: at Microsoft.NET.Build.Tasks.TaskBase.Execute() [/app/app.csproj] /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() [/app/app.csproj] /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost, TaskLoggingContext taskLoggingContext, TaskHost taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask) [/app/app.csproj] Build FAILED. /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: The "CreateAppHost" task failed unexpectedly. [/app/app.csproj] /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: System.IO.IOException: Invalid argument [/app/app.csproj] /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: at System.IO.MemoryMappedFiles.MemoryMappedView.CreateView(SafeMemoryMappedFileHandle memMappedFileHandle, MemoryMappedFileAccess access, Int64 requestedOffset, Int64 requestedSize) [/app/app.csproj] /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: at System.IO.MemoryMappedFiles.MemoryMappedFile.CreateViewAccessor(Int64 offset, Int64 size, MemoryMappedFileAccess access) [/app/app.csproj] /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: at Microsoft.NET.HostModel.AppHost.MachOUtils.RemoveSignature(FileStream stream) [/app/app.csproj] /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: at Microsoft.NET.HostModel.AppHost.HostWriter.<>c__DisplayClass2_0.b__2() [/app/app.csproj] /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: at Microsoft.NET.HostModel.RetryUtil.RetryOnIOError(Action func) [/app/app.csproj] /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: at Microsoft.NET.HostModel.AppHost.HostWriter.CreateAppHost(String appHostSourceFilePath, String appHostDestinationFilePath, String appBinaryFilePath, Boolean windowsGraphicalUserInterface, String assemblyToCopyResourcesFrom, Boolean enableMacOSCodeSign) [/app/app.csproj] /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: at Microsoft.NET.Build.Tasks.CreateAppHost.ExecuteCore() [/app/app.csproj] /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: at Microsoft.NET.Build.Tasks.TaskBase.Execute() [/app/app.csproj] /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() [/app/app.csproj] /usr/share/dotnet/sdk/7.0.404/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(594,5): error MSB4018: at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost, TaskLoggingContext taskLoggingContext, TaskHost taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask) [/app/app.csproj] 0 Warning(s) 1 Error(s) Time Elapsed 00:01:00.43 ``` ### Expected behavior The `Hello World` project builds successfully ### Actual behavior Build fails with the following exception: ``` /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: The "CreateAppHost" task failed unexpectedly. [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: System.IO.IOException: Invalid argument [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at System.IO.MemoryMappedFiles.MemoryMappedView.CreateView(SafeMemoryMappedFileHandle memMappedFileHandle, MemoryMappedFileAccess access, Int64 requestedOffset, Int64 requestedSize) [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.NET.HostModel.AppHost.MachOUtils.RemoveSignature(FileStream stream) [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.NET.HostModel.AppHost.HostWriter.<>c__DisplayClass2_0.b__1() [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.NET.HostModel.RetryUtil.RetryOnIOError(Action func) [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.NET.HostModel.AppHost.HostWriter.CreateAppHost(String appHostSourceFilePath, String appHostDestinationFilePath, String appBinaryFilePath, Boolean windowsGraphicalUserInterface, String assemblyToCopyResourcesFrom, Boolean enableMacOSCodeSign) [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.NET.Build.Tasks.CreateAppHost.ExecuteCore() [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.NET.Build.Tasks.TaskBase.Execute() [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() [/app/app.csproj] /usr/share/dotnet/sdk/8.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(709,5): error MSB4018: at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost, TaskLoggingContext taskLoggingContext, TaskHost taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask) [/app/app.csproj] 0 Warning(s) 1 Error(s) Time Elapsed 00:01:00.80 ``` ### Regression? _No response_ ### Known Workarounds Set `UseAppHost` to false ### Configuration _No response_ ### Other information _No response_
Author: kidp330
Assignees: -
Labels: `area-HostModel`
Milestone: -
agocke commented 2 months ago

This is likely specific to some restrictions in this environment about memory mapped files. We currently use memory mapped files to write the apphost and the alternatives have other problems. I don’t anticipate changing this any time soon, unless an API equivalent to memory mapping becomes available on this platform combination. Also, memory mapping is a posix standard, so it not working is probably a broad weakness of podman + Mac.