diff --git a/src/Containers/packaging/build/Microsoft.NET.Build.Containers.targets b/src/Containers/packaging/build/Microsoft.NET.Build.Containers.targets index 694e1dc8372f..d94b4735faf3 100644 --- a/src/Containers/packaging/build/Microsoft.NET.Build.Containers.targets +++ b/src/Containers/packaging/build/Microsoft.NET.Build.Containers.targets @@ -15,6 +15,8 @@ <_ContainerIsTargetingNet8TFM Condition="'$(TargetFrameworkIdentifier)' == '.NETCoreApp' And $([MSBuild]::VersionGreaterThanOrEquals($(_TargetFrameworkVersionWithoutV), '8.0'))">true <_ContainerIsSelfContained>false <_ContainerIsSelfContained Condition="'$(SelfContained)' == 'true' or '$(PublishSelfContained)' == 'true'">true + + true @@ -235,10 +237,6 @@ )" Code="CONTAINER005" 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." /> - - - true - e.Name.LocalName == "PropertyGroup")? - .Add(new XElement("EnableSdkContainerSupport", "true")); document .Descendants() .First(e => e.Name.LocalName == "TargetFramework") @@ -452,6 +448,8 @@ public async Task EndToEnd_MultiProjectSolution() [InlineData("webapi", true)] [InlineData("worker", false)] [InlineData("worker", true)] + [InlineData("console", true)] + [InlineData("console", false)] public async Task EndToEnd_NoAPI_ProjectType(string projectType, bool addPackageReference) { DirectoryInfo newProjectDir = new(Path.Combine(TestSettings.TestArtifactsDirectory, $"CreateNewImageTest_{projectType}_{addPackageReference}")); @@ -503,7 +501,6 @@ public async Task EndToEnd_NoAPI_ProjectType(string projectType, bool addPackage var project = XDocument.Load(projectPath); var ns = project.Root?.Name.Namespace ?? throw new InvalidOperationException("Project file is empty"); - project.Root?.Add(new XElement("PropertyGroup", new XElement("EnableSDKContainerSupport", "true"))); project.Save(projectPath); } @@ -677,8 +674,7 @@ public void EndToEnd_NoAPI_Console(string baseImage) $"/p:ContainerBaseImage={baseImage}", $"/p:ContainerRegistry={DockerRegistryManager.LocalRegistry}", $"/p:ContainerRepository={imageName}", - $"/p:ContainerImageTag={imageTag}", - "/p:EnableSdkContainerSupport=true") + $"/p:ContainerImageTag={imageTag}") .WithEnvironmentVariable("NUGET_PACKAGES", privateNuGetAssets.FullName) .WithWorkingDirectory(newProjectDir.FullName) .Execute() @@ -718,8 +714,7 @@ public void EndToEnd_SingleArch_NoRid() "/t:PublishContainer", $"/p:ContainerBaseImage={DockerRegistryManager.FullyQualifiedBaseImageAspNet}", $"/p:ContainerRepository={imageName}", - $"/p:ContainerImageTag={imageTag}", - "/p:EnableSdkContainerSupport=true") + $"/p:ContainerImageTag={imageTag}") .WithWorkingDirectory(newProjectDir.FullName) .Execute(); commandResult.Should().Pass(); @@ -754,8 +749,7 @@ public void EndToEndMultiArch_LocalRegistry(string imageName) "/p:RuntimeIdentifiers=\"linux-x64;linux-arm64\"", $"/p:ContainerBaseImage={DockerRegistryManager.FullyQualifiedBaseImageAspNet}", $"/p:ContainerRepository={imageName}", - $"/p:ContainerImageTag={tag}", - "/p:EnableSdkContainerSupport=true") + $"/p:ContainerImageTag={tag}") .WithWorkingDirectory(newProjectDir.FullName) .Execute(); @@ -818,7 +812,6 @@ public void MultiArchStillAllowsSingleRID() $"/p:ContainerBaseImage={DockerRegistryManager.FullyQualifiedBaseImageAspNet}", $"/p:ContainerRepository={imageName}", $"/p:ContainerImageTag={imageTag}", - "/p:EnableSdkContainerSupport=true", "/bl") .WithWorkingDirectory(newProjectDir.FullName) .Execute(); @@ -868,7 +861,6 @@ public void MultiArchStillAllowsSingleRIDUsingJustRIDProperties() $"/p:ContainerBaseImage={DockerRegistryManager.FullyQualifiedBaseImageAspNet}", $"/p:ContainerRepository={imageName}", $"/p:ContainerImageTag={imageTag}", - "/p:EnableSdkContainerSupport=true", "/bl") .WithWorkingDirectory(newProjectDir.FullName) .Execute(); @@ -941,8 +933,7 @@ public void EndToEndMultiArch_ArchivePublishing(string imageName) $"/p:ContainerArchiveOutputPath={archiveOutput}", $"/p:ContainerBaseImage={DockerRegistryManager.FullyQualifiedBaseImageAspNet}", $"/p:ContainerRepository={imageName}", - $"/p:ContainerImageTag={tag}", - "/p:EnableSdkContainerSupport=true") + $"/p:ContainerImageTag={tag}") .WithWorkingDirectory(newProjectDir.FullName) .Execute(); @@ -1012,8 +1003,7 @@ public void EndToEndMultiArch_RemoteRegistry() $"/p:ContainerBaseImage={DockerRegistryManager.FullyQualifiedBaseImageAspNet}", $"/p:ContainerRegistry={registry}", $"/p:ContainerRepository={imageName}", - $"/p:ContainerImageTag={imageTag}", - "/p:EnableSdkContainerSupport=true") + $"/p:ContainerImageTag={imageTag}") .WithWorkingDirectory(newProjectDir.FullName) .Execute(); @@ -1044,7 +1034,7 @@ public void EndToEndMultiArch_RemoteRegistry() imageFromRegistry) .Execute() .Should().Pass(); - + // Run the containers ContainerCli.RunCommand( _testOutput, @@ -1087,8 +1077,7 @@ public void EndToEndMultiArch_ContainerRuntimeIdentifiersOverridesRuntimeIdentif "/p:ContainerRuntimeIdentifiers=linux-arm64", $"/p:ContainerBaseImage={DockerRegistryManager.FullyQualifiedBaseImageAspNet}", $"/p:ContainerRepository={imageName}", - $"/p:ContainerImageTag={imageTag}", - "/p:EnableSdkContainerSupport=true") + $"/p:ContainerImageTag={imageTag}") .WithWorkingDirectory(newProjectDir.FullName) .Execute(); @@ -1138,8 +1127,7 @@ public void EndToEndMultiArch_EnvVariables() "/p:RuntimeIdentifiers=\"linux-x64;linux-arm64\"", $"/p:ContainerBaseImage={DockerRegistryManager.FullyQualifiedBaseImageAspNet}", $"/p:ContainerRepository={imageName}", - $"/p:ContainerImageTag={tag}", - "/p:EnableSdkContainerSupport=true") + $"/p:ContainerImageTag={tag}") .WithWorkingDirectory(newProjectDir.FullName) .Execute() .Should().Pass(); @@ -1203,8 +1191,7 @@ public void EndToEndMultiArch_Ports() "/p:RuntimeIdentifiers=\"linux-x64;linux-arm64\"", $"/p:ContainerBaseImage={DockerRegistryManager.FullyQualifiedBaseImageAspNet}", $"/p:ContainerRepository={imageName}", - $"/p:ContainerImageTag={tag}", - "/p:EnableSdkContainerSupport=true") + $"/p:ContainerImageTag={tag}") .WithWorkingDirectory(newProjectDir.FullName) .Execute() .Should().Pass(); @@ -1290,8 +1277,7 @@ public void EndToEndMultiArch_Labels() "/p:RuntimeIdentifiers=\"linux-x64;linux-arm64\"", $"/p:ContainerBaseImage={DockerRegistryManager.FullyQualifiedBaseImageAspNet}", $"/p:ContainerRepository={imageName}", - $"/p:ContainerImageTag={tag}", - "/p:EnableSdkContainerSupport=true") + $"/p:ContainerImageTag={tag}") .WithWorkingDirectory(newProjectDir.FullName) .Execute() .Should().Pass();