From 7ad052612a37d3d3ff448cf875a8f8487c3991bf Mon Sep 17 00:00:00 2001 From: Chet Husk Date: Fri, 18 Apr 2025 16:16:11 -0500 Subject: [PATCH] ensure that single-rid container publishes populate all container information --- .../Microsoft.NET.Build.Containers.targets | 36 ++++++++++++------- 1 file changed, 23 insertions(+), 13 deletions(-) diff --git a/src/Containers/packaging/build/Microsoft.NET.Build.Containers.targets b/src/Containers/packaging/build/Microsoft.NET.Build.Containers.targets index 5cfcec7bff42..aaa9753fb45c 100644 --- a/src/Containers/packaging/build/Microsoft.NET.Build.Containers.targets +++ b/src/Containers/packaging/build/Microsoft.NET.Build.Containers.targets @@ -67,7 +67,9 @@ - + + $(RegistryUrl) @@ -177,24 +179,25 @@ _ContainerVerifySDKVersion; + _ContainerEstablishRIDNess; ComputeContainerConfig; _CheckContainersPackage - + target and not computed at the outer, multi-RID build layer. --> + <_ContainerIsTargetingWindows>false <_ContainerIsTargetingWindows Condition="$(ContainerRuntimeIdentifier.StartsWith('win'))">true - + /app/ C:\app\ - + <_ContainerIsUsingMicrosoftDefaultImages Condition="'$(ContainerBaseImage)' == ''">true <_ContainerIsUsingMicrosoftDefaultImages Condition="'$(ContainerBaseImage)' != ''">false @@ -245,7 +248,9 @@ Text="The $(_ContainersPackageIdentity) NuGet package is explicitly referenced but the current SDK can natively publish the project as a container. Consider removing the package reference to $(_ContainersPackageIdentity) because it is no longer needed." /> - + + $(NetCoreRoot) dotnet @@ -342,14 +347,16 @@ ContainerGenerateLabels=$(ContainerGenerateLabels); ContainerGenerateLabelsImageBaseDigest=$(ContainerGenerateLabelsImageBaseDigest); _SkipContainerPublishing=$(_SkipContainerPublishing); - ContainerImageFormat=$(_SingleImageContainerFormat) + ContainerImageFormat=$(_SingleImageContainerFormat); + _IsMultiRIDBuild=false; + _IsSingleRIDBuild=true "/> <_rids Remove ="$(_rids)" /> @@ -401,11 +408,7 @@ - + <_IsMultiTFMBuild Condition="'$(TargetFrameworks)' != '' and '$(TargetFramework)' == ''">true <_IsMultiRIDBuild Condition="'$(BuildingInsideVisualStudio)' != 'true' and ('$(_HasCRIDsAndNoCRID)' == true or ('$(_HasRIDs)' == 'true' and '$(_NoCRIDsOrCRIDorRID)' == 'true'))">true <_IsSingleRIDBuild Condition="'$(_IsMultiRIDBuild)' == ''">true + +