Skip to content

Support Nano Server and non-Windows OSes for apphost customization #9963

@peterhuene

Description

@peterhuene

Steps to reproduce

On Windows with Docker for Windows installed that has been configured to use "Windows Containers":

  1. docker run -it microsoft/dotnet-nightly:3.0-sdk
  2. mkdir repro && cd repro
  3. dotnet new console
  4. dotnet build

Expected behavior

The project builds without warnings or errors. The resulting apphost is customized.

Actual behavior

A warning is printed that the application host will not be customized because the Docker

C:\Program Files\dotnet\sdk\3.0.100-preview-009784\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.targets(294,5): warning NETSDK1074: The application host executable will not be customized because adding resources requires that the build be performed on Windows (excluding Nano Server).

This is because the resource updating API (starting with BeginUpdateResource) isn't available on Nano Server.

Given that CI systems might be using Nano Server to build applications, users will likely want this to work so that their build doesn't differ from other platforms.

Environment data

C:\>dotnet --info
.NET Core SDK (reflecting any global.json):
 Version:   3.0.100-preview-009784
 Commit:    d86a1816c4

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.14393
 OS Platform: Windows
 RID:         win10-x64
 Base Path:   C:\Program Files\dotnet\sdk\3.0.100-preview-009784\

Host (useful for support):
  Version: 3.0.0-preview-27122-01
  Commit:  00c5c8bc40

.NET Core SDKs installed:
  3.0.100-preview-009784 [C:\Program Files\dotnet\sdk]

.NET Core runtimes installed:
  Microsoft.AspNetCore.App 3.0.0-preview-18572-0018 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 3.0.0-preview-27122-01 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.WindowsDesktop.App 3.0.0-alpha-27122-4 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

To install additional .NET Core runtimes or SDKs:
  https://aka.ms/dotnet-download

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions