From ff532f25d729436809388de62b424a267c4fd2da Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Tue, 22 Oct 2024 14:49:08 -0700 Subject: [PATCH 01/50] Add an sfxproj for the ref pack for Microsoft.AspNetCore.App. IT has the same contents except for some simplification of the analyzer layout and the PlatformManifest (which will be implemented correctly as part converting the runtime pack) --- Directory.Build.targets | 1 + eng/Build.props | 1 + eng/Version.Details.xml | 4 + eng/targets/ResolveReferences.targets | 1 + eng/targets/Sfx.Common.targets | 3 + global.json | 3 +- .../src_sfx/CompatibilitySuppressions.xml | 8 ++ .../Microsoft.AspNetCore.App.Ref.Sfx.sfxproj | 135 ++++++++++++++++++ 8 files changed, 155 insertions(+), 1 deletion(-) create mode 100644 eng/targets/Sfx.Common.targets create mode 100644 src/Framework/App.Ref/src_sfx/CompatibilitySuppressions.xml create mode 100644 src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj diff --git a/Directory.Build.targets b/Directory.Build.targets index 140420599154..a8c939164a17 100644 --- a/Directory.Build.targets +++ b/Directory.Build.targets @@ -180,6 +180,7 @@ + + https://github.com/dotnet/arcade + 31624193093a13f765ab5382509e693911264509 + https://github.com/dotnet/extensions e11fb6176dbab6b027c946ff030dc14e666e1838 diff --git a/eng/targets/ResolveReferences.targets b/eng/targets/ResolveReferences.targets index e416d43f3038..925a1158fc6c 100644 --- a/eng/targets/ResolveReferences.targets +++ b/eng/targets/ResolveReferences.targets @@ -249,6 +249,7 @@ + + \ No newline at end of file diff --git a/global.json b/global.json index 39e45a7ad4df..1072e46d51cb 100644 --- a/global.json +++ b/global.json @@ -28,6 +28,7 @@ }, "msbuild-sdks": { "Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.24515.3", - "Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.24515.3" + "Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.24515.3", + "Microsoft.DotNet.SharedFramework.Sdk" : "10.0.0-beta.24515.3" } } diff --git a/src/Framework/App.Ref/src_sfx/CompatibilitySuppressions.xml b/src/Framework/App.Ref/src_sfx/CompatibilitySuppressions.xml new file mode 100644 index 000000000000..8aab0193f779 --- /dev/null +++ b/src/Framework/App.Ref/src_sfx/CompatibilitySuppressions.xml @@ -0,0 +1,8 @@ + + + + + PKV004 + net10.0 + + \ No newline at end of file diff --git a/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj b/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj new file mode 100644 index 000000000000..91a31a3d31a7 --- /dev/null +++ b/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj @@ -0,0 +1,135 @@ + + + + + TargetingPack + Microsoft.AspNetCore.App + Microsoft ASP.NET Core + $(DefaultNetCoreTargetFramework) + aspnetcore;targeting-pack + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + PackageOverrides.txt + + $(BaseIntermediateOutputPath)$(PackageOverridesFileName) + $(RepoRoot)eng\$(PackageOverridesFileName) + + + + + + + + + + + + + + + + + + <_TransportRoslynVersionedAnalyzers Include="$(PkgMicrosoft_Internal_Runtime_AspNetCore_Transport)\$(AnalyzersPackagePath)\dotnet\roslyn*\**\*.*" /> + <_TransportAnalyzers Include="$(PkgMicrosoft_Internal_Runtime_AspNetCore_Transport)\$(AnalyzersPackagePath)**\*.*" + Exclude="@(_TransportRoslynVersionedAnalyzers)" /> + + + + + + + roslyn[0-9]+.[0-9]+\$([System.IO.Path]::DirectorySeparatorChar) + + + <_TransportRoslynVersionedAnalyzers Include="$(PkgMicrosoft_Internal_Runtime_AspNetCore_Transport)\$(AnalyzersPackagePath)\dotnet\roslyn*\**\*.*" /> + <_TransportRoslynVersionedAnalyzers UnversionedAnalyzerPath="$([System.Text.RegularExpressions.Regex]::Replace('%(RecursiveDir)', '$(RoslynVersionPattern)', ''))" /> + + + + + + + + + + + + + <_AspNetCoreAppPackageOverrides Include="@(ReferencePath->'%(NuGetPackageId)|%(NuGetPackageVersion)')" + Condition="!Exists('$(RuntimeTransportReferenceDirectory)%(ReferencePath.NuGetPackageId).dll') AND + '%(ReferencePath.NuGetPackageId)' != 'Microsoft.NETCore.App' AND + '%(ReferencePath.NuGetPackageId)' != 'Microsoft.Internal.Runtime.AspNetCore.Transport' AND + '%(ReferencePath.NuGetSourceType)' == 'Package' " /> + + <_AspNetCoreAppPackageOverrides Include="@(ReferencePath->'%(FileName)|$(ReferencePackSharedFxVersion)')" + Condition=" '%(ReferencePath.ReferenceSourceTarget)' == 'ProjectReference' " /> + + + + + From c26b20d1298ba554163453f4a26c3b85cc1edb35 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Tue, 22 Oct 2024 17:41:17 -0700 Subject: [PATCH 02/50] Add sfxproj-based runtime framework project --- .../Microsoft.AspNetCore.App.Ref.Sfx.sfxproj | 9 +-- .../src_sfx/CompatibilitySuppressions.xml | 8 +++ ...crosoft.AspNetCore.App.Runtime.Sfx.sfxproj | 71 +++++++++++++++++++ 3 files changed, 80 insertions(+), 8 deletions(-) create mode 100644 src/Framework/App.Runtime/src_sfx/CompatibilitySuppressions.xml create mode 100644 src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj diff --git a/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj b/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj index 91a31a3d31a7..d9e120d4ca78 100644 --- a/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj +++ b/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj @@ -7,8 +7,7 @@ Microsoft ASP.NET Core $(DefaultNetCoreTargetFramework) aspnetcore;targeting-pack - - true + $(RepoRoot)src\Framework\App.Runtime\src_sfx\Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj @@ -39,12 +38,6 @@ Private="false" OutputItemType="AspNetCoreAnalyzer" ReferenceOutputAssembly="false" /> - - - diff --git a/src/Framework/App.Runtime/src_sfx/CompatibilitySuppressions.xml b/src/Framework/App.Runtime/src_sfx/CompatibilitySuppressions.xml new file mode 100644 index 000000000000..2b57d860ed2b --- /dev/null +++ b/src/Framework/App.Runtime/src_sfx/CompatibilitySuppressions.xml @@ -0,0 +1,8 @@ + + + + + PKV0001 + net10.0 + + \ No newline at end of file diff --git a/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj b/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj new file mode 100644 index 000000000000..b67c8366c376 --- /dev/null +++ b/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj @@ -0,0 +1,71 @@ + + + + + RuntimePack + Microsoft.AspNetCore.App + Microsoft ASP.NET Core + $(DefaultNetCoreTargetFramework) + aspnetcore;shared-framework + $(TargetRuntimeIdentifier) + + true + + true + LatestPatch + + false + + false + true + + + .pdb + + + + + Runtime;Native + + + + + + + + + + + + + $(TargetArchitecture) + Win32 + + + + Platform=$(NativePlatform) + + _ResolvedNativeProjectReferencePaths + + Build;GetTargetPath + + + <_ResolvedNativeProjectReferencePaths Condition=" '$(UseIisNativeAssets)' == 'true' AND !$(BuildNative) " + Include="$(ArtifactsBinDir)InProcessRequestHandler\$(NativePlatform)\$(Configuration)\aspnetcorev2_inprocess.dll" /> + + + + + + + + + + + + + From 1ff78456b5e7b961bc906e67eee77057a2aa7390 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Tue, 22 Oct 2024 17:57:11 -0700 Subject: [PATCH 03/50] Produce the targeting pack archives --- eng/Version.Details.xml | 4 ++++ eng/Versions.props | 1 + .../src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj | 9 +++++++++ 3 files changed, 14 insertions(+) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 7a0aaab86b62..3de2bd9845b5 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -394,6 +394,10 @@ 31624193093a13f765ab5382509e693911264509 + + https://github.com/dotnet/arcade + 31624193093a13f765ab5382509e693911264509 + https://github.com/dotnet/arcade 31624193093a13f765ab5382509e693911264509 diff --git a/eng/Versions.props b/eng/Versions.props index d651e834501e..d3c4c2636bcd 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -165,6 +165,7 @@ 6.2.4 6.2.4 + 10.0.0-beta.24515.3 10.0.0-beta.24515.3 10.0.0-beta.24515.3 10.0.0-beta.24515.3 diff --git a/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj b/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj index d9e120d4ca78..917efee62b0d 100644 --- a/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj +++ b/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj @@ -8,8 +8,17 @@ $(DefaultNetCoreTargetFramework) aspnetcore;targeting-pack $(RepoRoot)src\Framework\App.Runtime\src_sfx\Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj + $(TargetRuntimeIdentifier) + aspnetcore-targeting-pack + + + true + + + + From 789e9bf16bd083d6582d28702d9f7de752ce4f8e Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Tue, 22 Oct 2024 18:09:40 -0700 Subject: [PATCH 04/50] Build the runtime archive. There's some extra rebuilding now, so need to look into that. --- .../src_sfx/aspnetcore-runtime.proj | 63 +++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 src/Framework/App.Runtime/src_sfx/aspnetcore-runtime.proj diff --git a/src/Framework/App.Runtime/src_sfx/aspnetcore-runtime.proj b/src/Framework/App.Runtime/src_sfx/aspnetcore-runtime.proj new file mode 100644 index 000000000000..822346101938 --- /dev/null +++ b/src/Framework/App.Runtime/src_sfx/aspnetcore-runtime.proj @@ -0,0 +1,63 @@ + + + $(DefaultNetCoreTargetFramework) + $(TargetRuntimeIdentifier) + + + true + + + + + + + + + + dotnet-runtime-$(MicrosoftNETCoreAppRuntimeVersion)-$(TargetRuntimeIdentifier).$(ArchiveFormat) + Runtime/$(MicrosoftNETCoreBrowserDebugHostTransportVersion)/$(DotNetRuntimeArchiveFileName) + $(BaseIntermediateOutputPath)$(DotNetRuntimeArchiveFileName) + + + + + + + + + $(DotnetRuntimeSourceFeedKey) + + + + + + + + + + + + + + + + + + + + From edd7c4e19ba805a1549874761d9758caeaba4a5a Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Tue, 22 Oct 2024 18:51:11 -0700 Subject: [PATCH 05/50] Add a (mostly correct, some TODOs) composite runtime image and archive. --- global.json | 3 +- ...t.AspNetCore.App.Runtime.Composite.sfxproj | 102 ++++++++++++++++++ .../src_sfx/aspnetcore-runtime-composite.proj | 63 +++++++++++ 3 files changed, 167 insertions(+), 1 deletion(-) create mode 100644 src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj create mode 100644 src/Framework/App.Runtime/src_sfx/aspnetcore-runtime-composite.proj diff --git a/global.json b/global.json index 1072e46d51cb..727e1f17243d 100644 --- a/global.json +++ b/global.json @@ -29,6 +29,7 @@ "msbuild-sdks": { "Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.24515.3", "Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.24515.3", - "Microsoft.DotNet.SharedFramework.Sdk" : "10.0.0-beta.24515.3" + "Microsoft.DotNet.SharedFramework.Sdk" : "10.0.0-beta.24515.3", + "Microsoft.Build.NoTargets": "3.7.0" } } diff --git a/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj b/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj new file mode 100644 index 000000000000..f72fc44158c2 --- /dev/null +++ b/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj @@ -0,0 +1,102 @@ + + + + + RuntimePack + Microsoft.AspNetCore.App + Microsoft ASP.NET Core + $(DefaultNetCoreTargetFramework) + false + $(TargetRuntimeIdentifier) + + true + + true + LatestPatch + + false + + false + true + true + + true + + + + true + + +x86-x64-v3 + $(PublishReadyToRunCrossgen2ExtraArgs);--instruction-set:$(InstructionSetSupport) + + + .pdb + + + + + Runtime;Native + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(TargetArchitecture) + Win32 + + + + Platform=$(NativePlatform) + + _ResolvedNativeProjectReferencePaths + + Build;GetTargetPath + + + <_ResolvedNativeProjectReferencePaths Condition=" '$(UseIisNativeAssets)' == 'true' AND !$(BuildNative) " + Include="$(ArtifactsBinDir)InProcessRequestHandler\$(NativePlatform)\$(Configuration)\aspnetcorev2_inprocess.dll" /> + + + + + + + + + + + + + diff --git a/src/Framework/App.Runtime/src_sfx/aspnetcore-runtime-composite.proj b/src/Framework/App.Runtime/src_sfx/aspnetcore-runtime-composite.proj new file mode 100644 index 000000000000..5eaed34ff61b --- /dev/null +++ b/src/Framework/App.Runtime/src_sfx/aspnetcore-runtime-composite.proj @@ -0,0 +1,63 @@ + + + $(DefaultNetCoreTargetFramework) + $(TargetRuntimeIdentifier) + + + true + + + + + + + + + + dotnet-runtime-$(MicrosoftNETCoreAppRuntimeVersion)-$(TargetRuntimeIdentifier).$(ArchiveFormat) + Runtime/$(MicrosoftNETCoreBrowserDebugHostTransportVersion)/$(DotNetRuntimeArchiveFileName) + $(BaseIntermediateOutputPath)$(DotNetRuntimeArchiveFileName) + + + + + + + + + $(DotnetRuntimeSourceFeedKey) + + + + + + + + + + + + + + + + + + + + From ef9422ee7d13f1ded1b97114f887a1d647f21daa Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Wed, 23 Oct 2024 18:05:38 +0000 Subject: [PATCH 06/50] Use traversal projects to ensure that building the runtime archive projects directly restores the sfxprojs. --- global.json | 3 ++- .../Microsoft.AspNetCore.App.Runtime.Composite.sfxproj | 1 - .../App.Runtime/src_sfx/aspnetcore-runtime-composite.proj | 5 +++-- src/Framework/App.Runtime/src_sfx/aspnetcore-runtime.proj | 5 +++-- 4 files changed, 8 insertions(+), 6 deletions(-) diff --git a/global.json b/global.json index 727e1f17243d..b343a9384a65 100644 --- a/global.json +++ b/global.json @@ -30,6 +30,7 @@ "Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.24515.3", "Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.24515.3", "Microsoft.DotNet.SharedFramework.Sdk" : "10.0.0-beta.24515.3", - "Microsoft.Build.NoTargets": "3.7.0" + "Microsoft.Build.NoTargets": "3.7.0", + "Microsoft.Build.Traversal": "3.4.0" } } diff --git a/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj b/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj index f72fc44158c2..ec7a1186cc9e 100644 --- a/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj +++ b/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj @@ -18,7 +18,6 @@ false true - true true diff --git a/src/Framework/App.Runtime/src_sfx/aspnetcore-runtime-composite.proj b/src/Framework/App.Runtime/src_sfx/aspnetcore-runtime-composite.proj index 5eaed34ff61b..0be5ba33f001 100644 --- a/src/Framework/App.Runtime/src_sfx/aspnetcore-runtime-composite.proj +++ b/src/Framework/App.Runtime/src_sfx/aspnetcore-runtime-composite.proj @@ -1,4 +1,4 @@ - + $(DefaultNetCoreTargetFramework) $(TargetRuntimeIdentifier) @@ -9,6 +9,7 @@ + + $(MicrosoftNETCoreAppRefVersion) + $(DotnetTargetingPackDependencyVersion.Substring(0, $(DotnetTargetingPackDependencyVersion.IndexOf('-'))))~$(DotnetTargetingPackDependencyVersion.Substring($([MSBuild]::Add($(DotnetTargetingPackDependencyVersion.IndexOf('-')), 1)))) + $(MicrosoftNETCoreAppRefVersion.Split('.')[0]).$(MicrosoftNETCoreAppRefVersion.Split('.')[1]) + true @@ -17,6 +31,8 @@ + + From f6de9ec85ea106600232870677db5041410758da Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Wed, 23 Oct 2024 19:09:23 +0000 Subject: [PATCH 08/50] Add the aspnetcore runtime deb package to the sfxproj --- .../Microsoft.AspNetCore.App.Ref.Sfx.sfxproj | 5 +++-- ...crosoft.AspNetCore.App.Runtime.Sfx.sfxproj | 22 +++++++++++++++++++ 2 files changed, 25 insertions(+), 2 deletions(-) diff --git a/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj b/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj index 72d61d00fb66..926809a8acd9 100644 --- a/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj +++ b/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj @@ -14,7 +14,9 @@ true true Microsoft ASP.NET Core - Provides a default set of APIs for building an ASP.NET Core $(AspNetCoreMajorMinorVersion) application. Contains reference assemblies, documentation, and other design-time assets. + + + $(SharedFxDescription) $(RepoRoot)LICENSE.txt $(AspNetCoreMajorVersion) $(AspNetCoreMinorVersion) @@ -24,7 +26,6 @@ $(DotnetTargetingPackDependencyVersion.Substring(0, $(DotnetTargetingPackDependencyVersion.IndexOf('-'))))~$(DotnetTargetingPackDependencyVersion.Substring($([MSBuild]::Add($(DotnetTargetingPackDependencyVersion.IndexOf('-')), 1)))) $(MicrosoftNETCoreAppRefVersion.Split('.')[0]).$(MicrosoftNETCoreAppRefVersion.Split('.')[1]) - true diff --git a/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj b/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj index b67c8366c376..f8909f820053 100644 --- a/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj +++ b/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj @@ -19,8 +19,26 @@ false true + aspnetcore-runtime + true + true + Microsoft ASP.NET Core + + $(SharedFxDescription) + $(RepoRoot)LICENSE.txt + $(AspNetCoreMajorVersion) + $(AspNetCoreMinorVersion) + + + $(MicrosoftNETCoreAppRefVersion) + $(DotnetTargetingPackDependencyVersion.Substring(0, $(DotnetTargetingPackDependencyVersion.IndexOf('-'))))~$(DotnetTargetingPackDependencyVersion.Substring($([MSBuild]::Add($(DotnetTargetingPackDependencyVersion.IndexOf('-')), 1)))) + $(MicrosoftNETCoreAppRefVersion.Split('.')[0]).$(MicrosoftNETCoreAppRefVersion.Split('.')[1]) + .pdb + + + true @@ -28,6 +46,10 @@ Runtime;Native + + + + From ad492ac69bac5b816e5fcb8b4356da55e08ee2f2 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Wed, 23 Oct 2024 19:19:17 +0000 Subject: [PATCH 09/50] Enable building RPM packages --- .../App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj | 1 + .../src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj | 1 + 2 files changed, 2 insertions(+) diff --git a/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj b/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj index 926809a8acd9..5208f5e4b18a 100644 --- a/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj +++ b/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj @@ -12,6 +12,7 @@ aspnetcore-targeting-pack aspnetcore-targeting-pack true + true true Microsoft ASP.NET Core diff --git a/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj b/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj index f8909f820053..d0a1a29f7f33 100644 --- a/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj +++ b/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj @@ -21,6 +21,7 @@ aspnetcore-runtime true + true true Microsoft ASP.NET Core From cf0e8332592f58e4f9e8c879fd8b67ee4200787d Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Wed, 23 Oct 2024 19:50:00 +0000 Subject: [PATCH 10/50] Publish from the new-style projects to the correct subfolders for consuming projects to pick up. --- .../src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj | 6 ++++++ .../src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj | 6 ++++++ src/Framework/App.Runtime/src_sfx/aspnetcore-runtime.proj | 6 ++++++ 3 files changed, 18 insertions(+) diff --git a/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj b/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj index 5208f5e4b18a..f6f9abb89299 100644 --- a/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj +++ b/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj @@ -152,4 +152,10 @@ File="$(ReferencePackageOverridesPath)" Overwrite="true" /> + + + + diff --git a/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj b/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj index d0a1a29f7f33..a6aa15ddf795 100644 --- a/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj +++ b/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj @@ -91,4 +91,10 @@ + + + + diff --git a/src/Framework/App.Runtime/src_sfx/aspnetcore-runtime.proj b/src/Framework/App.Runtime/src_sfx/aspnetcore-runtime.proj index 09ac427c4928..59c06a01c090 100644 --- a/src/Framework/App.Runtime/src_sfx/aspnetcore-runtime.proj +++ b/src/Framework/App.Runtime/src_sfx/aspnetcore-runtime.proj @@ -61,4 +61,10 @@ Targets="PublishToDisk" Properties="OutputPath=$(OutputPath)" /> + + + + From 8590cb718f04f797a2a4c7323b0539811058a5f7 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Thu, 24 Oct 2024 00:23:24 +0000 Subject: [PATCH 11/50] Remove a TODO that's being addressed --- .../src_sfx/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj b/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj index ec7a1186cc9e..47d9f50e77d5 100644 --- a/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj +++ b/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj @@ -20,7 +20,6 @@ true true - true From f5ab929de160e94a2bca9694b5927499994eb448 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Thu, 24 Oct 2024 17:43:30 +0000 Subject: [PATCH 12/50] Add support for partial R2R rooting based on https://github.com/dotnet/sdk/pull/44436 --- ...t.AspNetCore.App.Runtime.Composite.sfxproj | 14 ++++--- .../src_sfx/PartialCompositeAssemblyList.txt | 38 +++++++++++++++++++ 2 files changed, 46 insertions(+), 6 deletions(-) create mode 100644 src/Framework/App.Runtime/src_sfx/PartialCompositeAssemblyList.txt diff --git a/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj b/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj index 47d9f50e77d5..a824668e6d07 100644 --- a/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj +++ b/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj @@ -58,13 +58,15 @@ - + + + + + + + $(TargetArchitecture) @@ -92,7 +94,7 @@ - + diff --git a/src/Framework/App.Runtime/src_sfx/PartialCompositeAssemblyList.txt b/src/Framework/App.Runtime/src_sfx/PartialCompositeAssemblyList.txt new file mode 100644 index 000000000000..0bcbd4d48ad1 --- /dev/null +++ b/src/Framework/App.Runtime/src_sfx/PartialCompositeAssemblyList.txt @@ -0,0 +1,38 @@ +System.Private.CoreLib.dll +System.Runtime.dll +Microsoft.AspNetCore.Hosting.dll +Microsoft.AspNetCore.Hosting.Abstractions.dll +Microsoft.EntityFrameworkCore.dll +System.ComponentModel.dll +Microsoft.AspNetCore.Server.Kestrel.Core.dll +Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.dll +System.Console.dll +System.Threading.dll +System.Runtime.InteropServices.dll +Microsoft.Win32.Primitives.dll +System.Collections.dll +Microsoft.Extensions.Configuration.Json.dll +Microsoft.Extensions.Configuration.FileExtensions.dll +Microsoft.Extensions.FileProviders.Abstractions.dll +Microsoft.Extensions.FileProviders.Physical.dll +Microsoft.Extensions.Configuration.EnvironmentVariables.dll +Microsoft.Extensions.Configuration.CommandLine.dll +System.Linq.dll +System.Memory.dll +Microsoft.Extensions.Hosting.Abstractions.dll +Microsoft.AspNetCore.Server.Kestrel.dll +Microsoft.AspNetCore.Server.Kestrel.Transport.Quic.dll +System.Net.Quic.dll +System.Diagnostics.Tracing.dll +Microsoft.Extensions.Features.dll +Microsoft.AspNetCore.Http.Abstractions.dll +Microsoft.AspNetCore.Http.dll +System.Diagnostics.DiagnosticSource.dll +Microsoft.AspNetCore.Mvc.Core.dll +Microsoft.AspNetCore.Razor.Runtime.dll +Microsoft.AspNetCore.Connections.Abstractions.dll +System.Net.Primitives.dll +Microsoft.AspNetCore.Hosting.Server.Abstractions.dll +System.Collections.Concurrent.dll +System.Threading.ThreadPool.dll +System.Text.Json.dll From 28a3d39c8754be05f00a61a53ff40dc2d6398014 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Thu, 24 Oct 2024 18:03:06 +0000 Subject: [PATCH 13/50] Reuse global properties and remove TODO addresed in corresponding Arcade PR. --- .../src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj | 8 ++++---- .../src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj | 3 +-- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj b/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj index f6f9abb89299..819a6af58c57 100644 --- a/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj +++ b/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj @@ -9,14 +9,14 @@ aspnetcore;targeting-pack $(RepoRoot)src\Framework\App.Runtime\src_sfx\Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj $(TargetRuntimeIdentifier) - aspnetcore-targeting-pack - aspnetcore-targeting-pack + $(TargetingPackInstallerBaseName) + $(TargetingPackInstallerBaseName) true - true + true Microsoft ASP.NET Core - + ASP.NET Core Targeting Pack $(SharedFxDescription) $(RepoRoot)LICENSE.txt $(AspNetCoreMajorVersion) diff --git a/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj b/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj index a6aa15ddf795..c62255f7620b 100644 --- a/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj +++ b/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj @@ -19,12 +19,11 @@ false true - aspnetcore-runtime + $(RuntimeInstallerBaseName) true true true Microsoft ASP.NET Core - $(SharedFxDescription) $(RepoRoot)LICENSE.txt $(AspNetCoreMajorVersion) From 8df753c2cbb9e03d9359374377eef570b1435f30 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Thu, 24 Oct 2024 18:37:26 +0000 Subject: [PATCH 14/50] Replace old shared framework projects and Linux installers with the new sfxproj and archive-based projects --- AspNetCore.sln | 4 +- eng/Build.props | 10 +- eng/helix/helix.proj | 8 +- .../BuildAfterTargetingPack.csproj | 2 +- ...re.Components.WebAssembly.DevServer.csproj | 2 +- .../App.Ref/src/CompatibilitySuppressions.xml | 2 +- .../src/Microsoft.AspNetCore.App.Ref.csproj | 270 ------- .../Microsoft.AspNetCore.App.Ref.sfxproj} | 7 +- .../src_sfx/CompatibilitySuppressions.xml | 8 - .../src/CompatibilitySuppressions.xml | 2 +- ...t.AspNetCore.App.Runtime.Composite.sfxproj | 0 .../Microsoft.AspNetCore.App.Runtime.csproj | 723 ------------------ .../Microsoft.AspNetCore.App.Runtime.sfxproj} | 9 +- .../src/PartialCompositeAssemblyList.txt | 76 +- .../aspnetcore-runtime-composite.proj | 0 .../{src_sfx => src}/aspnetcore-runtime.proj | 0 .../src/runtimeconfig.template.json | 3 - .../src_sfx/CompatibilitySuppressions.xml | 8 - .../src_sfx/PartialCompositeAssemblyList.txt | 38 - src/Framework/Framework.slnf | 4 +- .../Microsoft.AspNetCore.App.UnitTests.csproj | 10 +- .../test/InteropTests/InteropTests.csproj | 2 +- src/Installers/Debian/Directory.Build.props | 25 - src/Installers/Debian/Directory.Build.targets | 64 -- .../Debian/Runtime/Debian.Runtime.debproj | 44 -- .../Debian/Runtime/debian_config.json.in | 36 - .../Debian.TargetingPack.debproj | 49 -- .../TargetingPack/debian_config.json.in | 36 - src/Installers/Debian/tools/build.sh | 278 ------- .../Debian/tools/package_files/debian/compat | 1 - .../tools/package_files/debian/source/format | 1 - .../scripts/config_template_generator.py | 267 ------- .../Debian/tools/scripts/debian_build_lib.sh | 170 ---- .../tools/scripts/extract_json_value.py | 64 -- .../Debian/tools/scripts/manpage_generator.py | 303 -------- .../Debian/tools/setup/build_setup.sh | 20 - .../Debian/tools/setup/test_setup.sh | 27 - .../Debian/tools/templates/debian/changelog | 5 - .../Debian/tools/templates/debian/control | 19 - .../Debian/tools/templates/debian/copyright | 10 - .../Debian/tools/templates/debian/rules | 14 - src/Installers/Debian/tools/test.sh | 41 - .../test/integration_tests/test_package.bats | 80 -- .../tools/test/test_assets/lkgtestman.1 | 99 --- .../test_package_layout/debian_config.json | 40 - .../test_assets/test_package_layout/docs.json | 108 --- .../test_package_layout/docs/testdocs.1 | 99 --- .../path_relative_to_package_root/test_exe.sh | 17 - .../package_root/test_called.sh | 7 - .../test_package_layout/samples/testsample.cs | 12 - .../tools/test/test_assets/testdocs.json | 108 --- .../unit_tests/test_debian_build_lib.bats | 279 ------- .../tools/test/unit_tests/test_scripts.bats | 28 - src/Installers/Rpm/Directory.Build.props | 29 - src/Installers/Rpm/Directory.Build.targets | 107 --- src/Installers/Rpm/Rpm.Runtime.Common.targets | 31 - .../Rpm/Runtime/Rpm.Runtime.rpmproj | 20 - .../TargetingPack/Rpm.TargetingPack.rpmproj | 43 -- src/Installers/Rpm/changelog.in | 2 - src/ProjectTemplates/ProjectTemplates.slnf | 4 +- .../Templates.Blazor.Tests.csproj | 2 +- ...lates.Blazor.WebAssembly.Auth.Tests.csproj | 2 +- .../Templates.Blazor.WebAssembly.Tests.csproj | 2 +- .../Templates.Mvc.Tests.csproj | 2 +- .../Templates.Tests/Templates.Tests.csproj | 2 +- src/SiteExtensions/LoggingBranch/LB.csproj | 2 +- ...t.AspNetCore.Runtime.SiteExtension.pkgproj | 2 +- 67 files changed, 78 insertions(+), 3711 deletions(-) delete mode 100644 src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.csproj rename src/Framework/App.Ref/{src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj => src/Microsoft.AspNetCore.App.Ref.sfxproj} (96%) delete mode 100644 src/Framework/App.Ref/src_sfx/CompatibilitySuppressions.xml rename src/Framework/App.Runtime/{src_sfx => src}/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj (100%) delete mode 100644 src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.csproj rename src/Framework/App.Runtime/{src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj => src/Microsoft.AspNetCore.App.Runtime.sfxproj} (94%) rename src/Framework/App.Runtime/{src_sfx => src}/aspnetcore-runtime-composite.proj (100%) rename src/Framework/App.Runtime/{src_sfx => src}/aspnetcore-runtime.proj (100%) delete mode 100644 src/Framework/App.Runtime/src/runtimeconfig.template.json delete mode 100644 src/Framework/App.Runtime/src_sfx/CompatibilitySuppressions.xml delete mode 100644 src/Framework/App.Runtime/src_sfx/PartialCompositeAssemblyList.txt delete mode 100644 src/Installers/Debian/Directory.Build.props delete mode 100644 src/Installers/Debian/Directory.Build.targets delete mode 100644 src/Installers/Debian/Runtime/Debian.Runtime.debproj delete mode 100644 src/Installers/Debian/Runtime/debian_config.json.in delete mode 100644 src/Installers/Debian/TargetingPack/Debian.TargetingPack.debproj delete mode 100644 src/Installers/Debian/TargetingPack/debian_config.json.in delete mode 100755 src/Installers/Debian/tools/build.sh delete mode 100644 src/Installers/Debian/tools/package_files/debian/compat delete mode 100644 src/Installers/Debian/tools/package_files/debian/source/format delete mode 100755 src/Installers/Debian/tools/scripts/config_template_generator.py delete mode 100755 src/Installers/Debian/tools/scripts/debian_build_lib.sh delete mode 100755 src/Installers/Debian/tools/scripts/extract_json_value.py delete mode 100755 src/Installers/Debian/tools/scripts/manpage_generator.py delete mode 100755 src/Installers/Debian/tools/setup/build_setup.sh delete mode 100755 src/Installers/Debian/tools/setup/test_setup.sh delete mode 100644 src/Installers/Debian/tools/templates/debian/changelog delete mode 100644 src/Installers/Debian/tools/templates/debian/control delete mode 100644 src/Installers/Debian/tools/templates/debian/copyright delete mode 100644 src/Installers/Debian/tools/templates/debian/rules delete mode 100755 src/Installers/Debian/tools/test.sh delete mode 100755 src/Installers/Debian/tools/test/integration_tests/test_package.bats delete mode 100644 src/Installers/Debian/tools/test/test_assets/lkgtestman.1 delete mode 100644 src/Installers/Debian/tools/test/test_assets/test_package_layout/debian_config.json delete mode 100644 src/Installers/Debian/tools/test/test_assets/test_package_layout/docs.json delete mode 100644 src/Installers/Debian/tools/test/test_assets/test_package_layout/docs/testdocs.1 delete mode 100755 src/Installers/Debian/tools/test/test_assets/test_package_layout/package_root/path_relative_to_package_root/test_exe.sh delete mode 100755 src/Installers/Debian/tools/test/test_assets/test_package_layout/package_root/test_called.sh delete mode 100644 src/Installers/Debian/tools/test/test_assets/test_package_layout/samples/testsample.cs delete mode 100644 src/Installers/Debian/tools/test/test_assets/testdocs.json delete mode 100755 src/Installers/Debian/tools/test/unit_tests/test_debian_build_lib.bats delete mode 100755 src/Installers/Debian/tools/test/unit_tests/test_scripts.bats delete mode 100644 src/Installers/Rpm/Directory.Build.props delete mode 100644 src/Installers/Rpm/Directory.Build.targets delete mode 100644 src/Installers/Rpm/Rpm.Runtime.Common.targets delete mode 100644 src/Installers/Rpm/Runtime/Rpm.Runtime.rpmproj delete mode 100644 src/Installers/Rpm/TargetingPack/Rpm.TargetingPack.rpmproj delete mode 100644 src/Installers/Rpm/changelog.in diff --git a/AspNetCore.sln b/AspNetCore.sln index 57a1bf9f0b3f..507d253c542e 100644 --- a/AspNetCore.sln +++ b/AspNetCore.sln @@ -972,7 +972,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Framework", "Framework", "{ EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "App.Runtime", "App.Runtime", "{F1A6BA04-853E-43B5-B27E-54558603837B}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.App.Runtime", "src\Framework\App.Runtime\src\Microsoft.AspNetCore.App.Runtime.csproj", "{3163C56E-99BC-4BD1-8880-4F94A2407741}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.App.Runtime", "src\Framework\App.Runtime\src\Microsoft.AspNetCore.App.Runtime.sfxproj", "{3163C56E-99BC-4BD1-8880-4F94A2407741}" EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Razor.Test", "src\Razor\Razor\test\Microsoft.AspNetCore.Razor.Test.csproj", "{776BFCDC-8591-4E3D-BD0D-858A188A033D}" EndProject @@ -1354,7 +1354,7 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.FilePr EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.FileProviders.Embedded.Tests", "src\FileProviders\Embedded\test\Microsoft.Extensions.FileProviders.Embedded.Tests.csproj", "{B06ADD57-E855-4D8C-85DC-B323509AE540}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.App.Ref", "src\Framework\App.Ref\src\Microsoft.AspNetCore.App.Ref.csproj", "{BAD47859-95DF-4C8F-9AF7-C48B68F478A1}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.App.Ref", "src\Framework\App.Ref\src\Microsoft.AspNetCore.App.Ref.sfxproj", "{BAD47859-95DF-4C8F-9AF7-C48B68F478A1}" EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.App.UnitTests", "src\Framework\test\Microsoft.AspNetCore.App.UnitTests.csproj", "{010A9638-F20E-4FE6-A186-85732BFC9CB0}" EndProject diff --git a/eng/Build.props b/eng/Build.props index cd0f718777e1..1497bca85e5a 100644 --- a/eng/Build.props +++ b/eng/Build.props @@ -107,13 +107,6 @@ - - - - - @@ -148,8 +141,7 @@ the entire pattern will silently fail to evaluate correctly. --> - - + + - @(_ResolvedProductVersionInfo->'%(PackageVersion)') <_AppRefSubPath>$([System.IO.Path]::Combine('packs', 'Microsoft.AspNetCore.App.Ref', '$(SharedFxVersion)')) <_AppRuntimeSubPath>$([System.IO.Path]::Combine('shared', 'Microsoft.AspNetCore.App', '$(SharedFxVersion)')) <_AppRefPath>$([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'artifacts', 'obj', 'TargetingPack.Layout', '$(Configuration)', '$(_AppRefSubPath)')) diff --git a/src/BuildAfterTargetingPack/BuildAfterTargetingPack.csproj b/src/BuildAfterTargetingPack/BuildAfterTargetingPack.csproj index c7d6da260af9..c87922cf1026 100644 --- a/src/BuildAfterTargetingPack/BuildAfterTargetingPack.csproj +++ b/src/BuildAfterTargetingPack/BuildAfterTargetingPack.csproj @@ -32,7 +32,7 @@ - diff --git a/src/Components/WebAssembly/DevServer/src/Microsoft.AspNetCore.Components.WebAssembly.DevServer.csproj b/src/Components/WebAssembly/DevServer/src/Microsoft.AspNetCore.Components.WebAssembly.DevServer.csproj index f719a274c732..b24c6bd6ac9e 100644 --- a/src/Components/WebAssembly/DevServer/src/Microsoft.AspNetCore.Components.WebAssembly.DevServer.csproj +++ b/src/Components/WebAssembly/DevServer/src/Microsoft.AspNetCore.Components.WebAssembly.DevServer.csproj @@ -29,7 +29,7 @@ - diff --git a/src/Framework/App.Ref/src/CompatibilitySuppressions.xml b/src/Framework/App.Ref/src/CompatibilitySuppressions.xml index ecd8cd0d2dea..8aab0193f779 100644 --- a/src/Framework/App.Ref/src/CompatibilitySuppressions.xml +++ b/src/Framework/App.Ref/src/CompatibilitySuppressions.xml @@ -1,5 +1,5 @@  - + PKV004 diff --git a/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.csproj b/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.csproj deleted file mode 100644 index 82d88cfd500c..000000000000 --- a/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.csproj +++ /dev/null @@ -1,270 +0,0 @@ - - - - - $(DefaultNetCoreTargetFramework) - $(TargetingPackName) - $(TargetingPackVersionPrefix) - - - - $(NoWarn);NU5128;NU1605 - - Provides a default set of APIs for building an ASP.NET Core application. Contains reference assemblies, documentation, and other design-time assets. - -This package is an internal implementation of the .NET Core SDK and is not meant to be used as a normal PackageReference. - aspnetcore;targeting-pack - true - - DotnetPlatform - ref/$(TargetFramework)/ - - - false - - - none - false - false - false - false - false - - - false - - - MSB3243 - - $(NoWarn);NU5131;NU5128 - - - FrameworkList.xml - $(BaseIntermediateOutputPath)$(FrameworkListFileName) - - - $(PkgMicrosoft_Internal_Runtime_AspNetCore_Transport)\ref\$(TargetFramework)\ - - - PackageOverrides.txt - - $(BaseIntermediateOutputPath)$(PackageOverridesFileName) - $(RepoRoot)eng\$(PackageOverridesFileName) - - $(PlatformManifestOutputPath) - $(RepoRoot)eng\PlatformManifest.txt - - - true - - - - - - - - - - - - - - - - - - - - - - - packs\Microsoft.AspNetCore.App.Ref\$(PackageVersion)\ - $(TargetingPackLayoutRoot)$(TargetingPackSubPath) - - aspnetcore-targeting-pack-$(PackageVersion)-$(TargetRuntimeIdentifier) - $(InstallersOutputPath)$(ArchiveOutputFileName)$(ArchiveExtension) - - - - - $(BuildDependsOn); - _ResolveInitialTargetingPackContent; - GeneratePackageOverrides; - GenerateFrameworkListFile; - _ResolveTargetingPackContent; - _BatchCopyToLayoutTargetDir; - _CreateTargetingPackArchive; - - - _ResolveInitialTargetingPackContent; - _ResolveTargetingPackContent; - - - - $(GenerateNuspecDependsOn); - $(ResolveTargetingPackContentDependsOn) - - - - - - - - - - - - - - - - - - <_DisallowedReferenceAssemblies Include="System.Net.Quic.dll" /> - <_AvailableRuntimeRefAssemblies Include="$(RuntimeTransportReferenceDirectory)*.dll" - Exclude="@(_DisallowedReferenceAssemblies->'$(RuntimeTransportReferenceDirectory)%(Filename)%(Extension)')" /> - - - - - - - - - - - - - - - - - - <_InitialRefPackContent Include="$(PkgMicrosoft_Internal_Runtime_AspNetCore_Transport)\$(AnalyzersPackagePath)**\*.*" PackagePath="$(AnalyzersPackagePath)" /> - <_InitialRefPackContent Include="$(ArtifactsDir)bin\Microsoft.AspNetCore.App.Analyzers\$(Configuration)\netstandard2.0\Microsoft.AspNetCore.App.Analyzers.dll" PackagePath="$(AnalyzersPackagePath)dotnet/cs/" /> - <_InitialRefPackContent Include="$(ArtifactsDir)bin\Microsoft.AspNetCore.App.SourceGenerators\$(Configuration)\netstandard2.0\Microsoft.AspNetCore.App.SourceGenerators.dll" PackagePath="$(AnalyzersPackagePath)dotnet/cs/" /> - <_InitialRefPackContent Include="$(ArtifactsDir)bin\Microsoft.AspNetCore.Components.Analyzers\$(Configuration)\netstandard2.0\Microsoft.AspNetCore.Components.Analyzers.dll" PackagePath="$(AnalyzersPackagePath)dotnet/cs/" /> - <_InitialRefPackContent Include="$(ArtifactsDir)bin\Microsoft.AspNetCore.App.CodeFixes\$(Configuration)\netstandard2.0\Microsoft.AspNetCore.App.CodeFixes.dll" PackagePath="$(AnalyzersPackagePath)dotnet/cs/" /> - <_InitialRefPackContent Include="$(ArtifactsDir)bin\Microsoft.AspNetCore.Http.RequestDelegateGenerator\$(Configuration)\netstandard2.0\Microsoft.AspNetCore.Http.RequestDelegateGenerator.dll" PackagePath="$(AnalyzersPackagePath)dotnet/cs/" /> - - <_InitialRefPackContent Include="@(AspNetCoreReferenceAssemblyPath)" PackagePath="$(RefAssemblyPackagePath)" /> - <_InitialRefPackContent Include="@(AspNetCoreReferenceDocXml)" PackagePath="$(RefAssemblyPackagePath)" /> - <_InitialRefPackContent Include="$(ReferencePlatformManifestPath)" PackagePath="$(ManifestsPackagePath)" /> - - - - - - - - - <_PackageFiles Include="@(RefPackContent)" /> - - - - - - - - - <_AspNetCoreAppPackageOverrides Include="@(AspNetCoreReferenceAssemblyPath->'%(NuGetPackageId)|%(NuGetPackageVersion)')" - Condition="!Exists('$(RuntimeTransportReferenceDirectory)%(AspNetCoreReferenceAssemblyPath.NuGetPackageId).dll') AND - '%(AspNetCoreReferenceAssemblyPath.NuGetPackageId)' != 'Microsoft.NETCore.App' AND - '%(AspNetCoreReferenceAssemblyPath.NuGetPackageId)' != 'Microsoft.Internal.Runtime.AspNetCore.Transport' AND - '%(AspNetCoreReferenceAssemblyPath.NuGetSourceType)' == 'Package' " /> - - - <_AspNetCoreAppPackageOverrides Include="@(_ReferencedRuntimeRefAssemblies->'%(FileName)|$(MicrosoftNETCoreAppRuntimeVersion)')" /> - - <_AspNetCoreAppPackageOverrides Include="@(AspNetCoreReferenceAssemblyPath->'%(FileName)|$(ReferencePackSharedFxVersion)')" - Condition=" '%(AspNetCoreReferenceAssemblyPath.ReferenceSourceTarget)' == 'ProjectReference' " /> - - - - - - - - - <_ExtraLayoutFiles Include="$(LayoutTargetDir)**\*.*" - Exclude="@(RefPackContent->'$(LayoutTargetDir)%(PackagePath)%(RecursiveDir)%(FileName)%(Extension)')" /> - - - - - - - - - - - - - - - - - - - diff --git a/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj b/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj similarity index 96% rename from src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj rename to src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj index 819a6af58c57..d1202c9f780e 100644 --- a/src/Framework/App.Ref/src_sfx/Microsoft.AspNetCore.App.Ref.Sfx.sfxproj +++ b/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj @@ -11,8 +11,6 @@ $(TargetRuntimeIdentifier) $(TargetingPackInstallerBaseName) $(TargetingPackInstallerBaseName) - true - true Microsoft ASP.NET Core @@ -31,6 +29,11 @@ true + + true + true + + diff --git a/src/Framework/App.Ref/src_sfx/CompatibilitySuppressions.xml b/src/Framework/App.Ref/src_sfx/CompatibilitySuppressions.xml deleted file mode 100644 index 8aab0193f779..000000000000 --- a/src/Framework/App.Ref/src_sfx/CompatibilitySuppressions.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - PKV004 - net10.0 - - \ No newline at end of file diff --git a/src/Framework/App.Runtime/src/CompatibilitySuppressions.xml b/src/Framework/App.Runtime/src/CompatibilitySuppressions.xml index 117ec7137b65..2b57d860ed2b 100644 --- a/src/Framework/App.Runtime/src/CompatibilitySuppressions.xml +++ b/src/Framework/App.Runtime/src/CompatibilitySuppressions.xml @@ -1,5 +1,5 @@  - + PKV0001 diff --git a/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj similarity index 100% rename from src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj rename to src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj diff --git a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.csproj b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.csproj deleted file mode 100644 index 48725d72139d..000000000000 --- a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.csproj +++ /dev/null @@ -1,723 +0,0 @@ - - - - - $(DefaultNetCoreTargetFramework) - $(TargetRuntimeIdentifier) - - false - $(MSBuildProjectName).$(RuntimeIdentifier) - - false - Provides a default set of APIs for building an ASP.NET Core application. Contains assets used for self-contained deployments. - -This package is an internal implementation of the .NET Core SDK and is not meant to be used as a normal PackageReference. - - aspnetcore;shared-framework - true - - true - DotnetPlatform - - - aspnetcore_base_runtime.version - $(InstallersOutputPath)$(BaseRuntimeVersionFileName) - - - runtimes/$(RuntimeIdentifier)/lib/ - - $(BuildOutputTargetFolder)$(DefaultNetCoreTargetFramework) - - runtimes/$(RuntimeIdentifier)/native/ - - - dotnet-runtime-$(MicrosoftNETCoreAppRuntimeVersion)-$(TargetRuntimeIdentifier)$(ArchiveExtension) - Runtime/$(MicrosoftNETCoreBrowserDebugHostTransportVersion)/$(DotNetRuntimeArchiveFileName) - $(BaseIntermediateOutputPath)$(DotNetRuntimeArchiveFileName) - - - .pdb - - - $(AllowedOutputExtensionsInSymbolsPackageBuildOutputFolder);.r2rmap - - - false - - false - true - - - true - false - - - true - $(SharedFxName).runtimeconfig.json - - true - - - false - $(SharedFxName).deps.json - - - $(IntermediateOutputPath)ignoreme.dev.runtimeconfig.json - - $(IntermediateOutputPath)$(SharedFxName).versions.txt - $(IntermediateOutputPath).version - - - none - false - false - false - - - true - - - <_GetChildProjectCopyToOutputDirectoryItems>false - - - false - - - PerfMap - PDB - - - lib - - - crossgen2 - $(Crossgen2ToolFileName).exe - - - PkgMicrosoft_NETCore_App_Runtime_$(RuntimeIdentifier.Replace('.', '_')) - - - $(TargetOsName) - linux - $(TargetRuntimeIdentifier.Substring(0,$(TargetRuntimeIdentifier.IndexOf('-')))) - x64 - $(BuildArchitecture) - PkgMicrosoft_NETCore_App_Crossgen2_$(BuildOsName.Replace('.', '_'))-$(Crossgen2BuildArchitecture) - - $(AssetTargetFallback);native,Version=0.0 - - $(TargetArchitecture) - Win32 - - - true - - - - - - Runtime;Native - - - - - - - - - Platform=$(NativePlatform) - - true - - _ResolvedNativeProjectReferencePaths - - Build;GetTargetPath - - - <_ResolvedNativeProjectReferencePaths Condition=" '$(UseIisNativeAssets)' == 'true' AND !$(BuildNative) " - Include="$(ArtifactsBinDir)InProcessRequestHandler\$(NativePlatform)\$(Configuration)\aspnetcorev2_inprocess.dll"> - true - - - - - - - - - - - shared\$(SharedFxName)\$(SharedFxVersion)\ - $(SharedFrameworkLayoutRoot)$(SharedRuntimeSubPath) - $(RedistSharedFrameworkLayoutRoot)$(SharedRuntimeSubPath) - - RuntimeList.xml - $(BaseIntermediateOutputPath)$(RuntimeListFileName) - - $(RuntimeInstallerBaseName)-$(PackageVersion)-$(TargetRuntimeIdentifier)$(ArchiveExtension) - $(InstallersOutputPath)$(RedistArchiveOutputFileName) - $(RuntimeInstallerBaseName)-composite-$(PackageVersion)-$(TargetRuntimeIdentifier)$(ArchiveExtension) - $(InstallersOutputPath)$(CompositeArchiveOutputFileName) - - - - - - $(ResolveReferencesDependsOn); - FilterUnwantedContent; - _ResolveCopyLocalNativeReference; - PrepareForCrossGen; - - - $(CoreBuildDependsOn); - Crossgen; - GenerateSharedFxDepsFile; - GenerateSharedFxVersionsFiles; - _ResolveNativePackContent; - _IncludeVersionFile; - _ResolveInitialSharedFrameworkContent; - _GenerateRuntimeListFile; - _ResolveRuntimePackContent; - _ResolveSharedFrameworkContent; - _DownloadAndExtractDotNetRuntime; - _BatchCopyToSharedFrameworkLayout; - _BatchCopyToRedistLayout; - _BatchCopyToCompositeLayout; - _CreateRedistSharedFxArchive; - _CreateRedistCompositeArchive; - - - - _ResolveNativePackContent; - _IncludeVersionFile; - $(GenerateNuspecDependsOn); - _ResolveInitialSharedFrameworkContent; - _ResolveRuntimePackContent; - _ResolveSharedFrameworkContent; - - - ResolveReferences; - - - $(CrossGenDependsOn); - _BatchCrossGenAssemblies; - _GenerateComposites; - - - - $(TargetsForTfmSpecificBuildOutput); - _ResolveRuntimePackBuildOutput - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - <_RuntimeReference Include="@(ReferenceCopyLocalPaths)" Condition="'%(ReferenceCopyLocalPaths.Extension)' != '.pdb' AND '%(ReferenceCopyLocalPaths.Extension)' != '.r2rmap'" /> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %(BuildOutputFiles.Identity) - - - - - - - - - - - - - - - - - - - - - - - - - $(IntermediateOutputPath)crossgen\ - $(IntermediateOutputPath)platformAssemblies\ - - - - - - - - - - $(%(Identity)) - - - - $(%(Identity)) - - - - @(RuntimePackageRootMapping->'%(RuntimePackageRoot)') - $([MSBuild]::EnsureTrailingSlash('$(RuntimePackageRoot)')) - @(Crossgen2PackageRootMapping->'%(Crossgen2PackageRoot)') - $([MSBuild]::EnsureTrailingSlash('$(Crossgen2PackageRoot)')) - - - - - - - - - - - - - - <_PlatformAssemblyPaths Include="$(CrossgenToolDir)" /> - - <_PlatformAssemblyPaths Include="@(ReferenceCopyLocalPaths->'%(RootDir)%(Directory)')" Condition="'%(ReferenceCopyLocalPaths.ProjectPath)' == ''"/> - - <_PlatformAssemblyPaths Include="$(CrossgenPlatformAssembliesDir)"/> - - - - - <_DistinctPlatformAssemblyPaths Include="@(_PlatformAssemblyPaths->Distinct())"/> - <_DistinctPlatformAssemblyPaths> - -r:%(Identity)*.dll - - - - - - - $([System.IO.Path]::Combine('$(Crossgen2PackageRoot)', 'tools', '$(Crossgen2ToolFileName)')) - $(TargetDir) - $(RuntimePackageRoot)tools\StandardOptimizationData.mibc - - - - $(TargetDir)\ - - - - - - - - - - - - - - - - $(TargetOsName) - windows - linux - - - --targetarch:$(TargetArchitecture) - $(Crossgen2Args) --targetos:$(Crossgen2TargetOs) - $(Crossgen2Args) -O - $(Crossgen2Args) @"$(CrossgenToolDir)PlatformAssembliesPathsCrossgen2.rsp" - $(Crossgen2Args) "-m:$(CrossgenOptimizationData)" - $(Crossgen2Args) --pdb --pdb-path:"$(CrossgenSymbolsTargetDir)" - $(Crossgen2Args) --perfmap --perfmap-format-version:1 --perfmap-path:"$(CrossgenSymbolsTargetDir)" - - - - - - - - - - - - $([MSBuild]::NormalizeDirectory('$(ArtifactsObjDir)', 'Composite', '$(Configuration)')) - full-composite.r2r - $(CompositeTargetDir)\$(CompositeFileName).rsp - @$(CompositeResponseFile) - $(RuntimePackageRoot)$(ManagedAssetsPackagePath) - $(RuntimePackageRoot)$(NativeAssetsPackagePath) - $(MSBuildThisFileDirectory)\PartialCompositeAssemblyList.txt - +x86-x64-v3 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $(DotnetRuntimeSourceFeedKey) - - - - - - - - - - - - - - - - - <_InitialSharedFxContent Include="$(DotVersionFileIntermediateOutputPath)" /> - <_InitialSharedFxContent Include="$(ProjectDepsFilePath)" /> - <_InitialSharedFxContent Include="$(ProjectRuntimeConfigFilePath)" /> - <_InitialSharedFxContent Include="@(ReferenceCopyLocalPaths)" Condition="'%(Extension)' != '.pdb'" /> - <_InitialSharedFxContent Include="$(RepoRoot)THIRD-PARTY-NOTICES.txt" /> - - - <_InitialSharedFxContent Condition="'%(_InitialSharedFxContent.Extension)' == '.dll'"> - $(NativeAssetsPackagePath) - $(ManagedAssetsPackagePath) - - - - - - - - - - <_PackageFiles Include="$(RuntimeListOutputPath)" PackagePath="$(ManifestsPackagePath)" /> - <_PackageFiles Include="@(RuntimePackContent)" /> - - - - - - - <_ExtraLayoutFiles Include="$(SharedFxLayoutTargetDir)**\*.*" - Exclude="@(RefPackContent->'$(SharedFxLayoutTargetDir)%(FileName)%(Extension)')" /> - - - - - - - - - - - - - <_ExtraRedistFiles Include="$(RedistLayoutTargetDir)**\*.*" - Exclude="@(RefPackContent->'$(RedistLayoutTargetDir)%(FileName)%(Extension)')" /> - - - - - - - - - - - - - $([MSBuild]::NormalizeDirectory('$(ArtifactsObjDir)', CompositeFx.Layout, '$(Configuration)', '$(TargetRuntimeIdentifier)')) - $(CompositeFrameworkLayoutRoot)\shared\$(SharedFxName)\$(SharedFxVersion)\ - $(CompositeFrameworkLayoutRoot)\shared\Microsoft.NETCore.App\$(MicrosoftNETCoreAppRuntimeVersion)\ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj similarity index 94% rename from src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj rename to src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj index c62255f7620b..d54627a14e06 100644 --- a/src/Framework/App.Runtime/src_sfx/Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj +++ b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj @@ -20,8 +20,6 @@ true $(RuntimeInstallerBaseName) - true - true true Microsoft ASP.NET Core $(SharedFxDescription) @@ -41,6 +39,11 @@ true + + true + true + + Runtime;Native @@ -96,4 +99,6 @@ Targets="PublishToDisk" Properties="OutputPath=$(SharedFrameworkLayoutRoot)" /> + + diff --git a/src/Framework/App.Runtime/src/PartialCompositeAssemblyList.txt b/src/Framework/App.Runtime/src/PartialCompositeAssemblyList.txt index 45729ddbfc0c..0bcbd4d48ad1 100644 --- a/src/Framework/App.Runtime/src/PartialCompositeAssemblyList.txt +++ b/src/Framework/App.Runtime/src/PartialCompositeAssemblyList.txt @@ -1,38 +1,38 @@ -System.Private.CoreLib -System.Runtime -Microsoft.AspNetCore.Hosting -Microsoft.AspNetCore.Hosting.Abstractions -Microsoft.EntityFrameworkCore -System.ComponentModel -Microsoft.AspNetCore.Server.Kestrel.Core -Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets -System.Console -System.Threading -System.Runtime.InteropServices -Microsoft.Win32.Primitives -System.Collections -Microsoft.Extensions.Configuration.Json -Microsoft.Extensions.Configuration.FileExtensions -Microsoft.Extensions.FileProviders.Abstractions -Microsoft.Extensions.FileProviders.Physical -Microsoft.Extensions.Configuration.EnvironmentVariables -Microsoft.Extensions.Configuration.CommandLine -System.Linq -System.Memory -Microsoft.Extensions.Hosting.Abstractions -Microsoft.AspNetCore.Server.Kestrel -Microsoft.AspNetCore.Server.Kestrel.Transport.Quic -System.Net.Quic -System.Diagnostics.Tracing -Microsoft.Extensions.Features -Microsoft.AspNetCore.Http.Abstractions -Microsoft.AspNetCore.Http -System.Diagnostics.DiagnosticSource -Microsoft.AspNetCore.Mvc.Core -Microsoft.AspNetCore.Razor.Runtime -Microsoft.AspNetCore.Connections.Abstractions -System.Net.Primitives -Microsoft.AspNetCore.Hosting.Server.Abstractions -System.Collections.Concurrent -System.Threading.ThreadPool -System.Text.Json +System.Private.CoreLib.dll +System.Runtime.dll +Microsoft.AspNetCore.Hosting.dll +Microsoft.AspNetCore.Hosting.Abstractions.dll +Microsoft.EntityFrameworkCore.dll +System.ComponentModel.dll +Microsoft.AspNetCore.Server.Kestrel.Core.dll +Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.dll +System.Console.dll +System.Threading.dll +System.Runtime.InteropServices.dll +Microsoft.Win32.Primitives.dll +System.Collections.dll +Microsoft.Extensions.Configuration.Json.dll +Microsoft.Extensions.Configuration.FileExtensions.dll +Microsoft.Extensions.FileProviders.Abstractions.dll +Microsoft.Extensions.FileProviders.Physical.dll +Microsoft.Extensions.Configuration.EnvironmentVariables.dll +Microsoft.Extensions.Configuration.CommandLine.dll +System.Linq.dll +System.Memory.dll +Microsoft.Extensions.Hosting.Abstractions.dll +Microsoft.AspNetCore.Server.Kestrel.dll +Microsoft.AspNetCore.Server.Kestrel.Transport.Quic.dll +System.Net.Quic.dll +System.Diagnostics.Tracing.dll +Microsoft.Extensions.Features.dll +Microsoft.AspNetCore.Http.Abstractions.dll +Microsoft.AspNetCore.Http.dll +System.Diagnostics.DiagnosticSource.dll +Microsoft.AspNetCore.Mvc.Core.dll +Microsoft.AspNetCore.Razor.Runtime.dll +Microsoft.AspNetCore.Connections.Abstractions.dll +System.Net.Primitives.dll +Microsoft.AspNetCore.Hosting.Server.Abstractions.dll +System.Collections.Concurrent.dll +System.Threading.ThreadPool.dll +System.Text.Json.dll diff --git a/src/Framework/App.Runtime/src_sfx/aspnetcore-runtime-composite.proj b/src/Framework/App.Runtime/src/aspnetcore-runtime-composite.proj similarity index 100% rename from src/Framework/App.Runtime/src_sfx/aspnetcore-runtime-composite.proj rename to src/Framework/App.Runtime/src/aspnetcore-runtime-composite.proj diff --git a/src/Framework/App.Runtime/src_sfx/aspnetcore-runtime.proj b/src/Framework/App.Runtime/src/aspnetcore-runtime.proj similarity index 100% rename from src/Framework/App.Runtime/src_sfx/aspnetcore-runtime.proj rename to src/Framework/App.Runtime/src/aspnetcore-runtime.proj diff --git a/src/Framework/App.Runtime/src/runtimeconfig.template.json b/src/Framework/App.Runtime/src/runtimeconfig.template.json deleted file mode 100644 index 94bcf689a3b8..000000000000 --- a/src/Framework/App.Runtime/src/runtimeconfig.template.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "rollForward": "LatestPatch" -} \ No newline at end of file diff --git a/src/Framework/App.Runtime/src_sfx/CompatibilitySuppressions.xml b/src/Framework/App.Runtime/src_sfx/CompatibilitySuppressions.xml deleted file mode 100644 index 2b57d860ed2b..000000000000 --- a/src/Framework/App.Runtime/src_sfx/CompatibilitySuppressions.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - PKV0001 - net10.0 - - \ No newline at end of file diff --git a/src/Framework/App.Runtime/src_sfx/PartialCompositeAssemblyList.txt b/src/Framework/App.Runtime/src_sfx/PartialCompositeAssemblyList.txt deleted file mode 100644 index 0bcbd4d48ad1..000000000000 --- a/src/Framework/App.Runtime/src_sfx/PartialCompositeAssemblyList.txt +++ /dev/null @@ -1,38 +0,0 @@ -System.Private.CoreLib.dll -System.Runtime.dll -Microsoft.AspNetCore.Hosting.dll -Microsoft.AspNetCore.Hosting.Abstractions.dll -Microsoft.EntityFrameworkCore.dll -System.ComponentModel.dll -Microsoft.AspNetCore.Server.Kestrel.Core.dll -Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.dll -System.Console.dll -System.Threading.dll -System.Runtime.InteropServices.dll -Microsoft.Win32.Primitives.dll -System.Collections.dll -Microsoft.Extensions.Configuration.Json.dll -Microsoft.Extensions.Configuration.FileExtensions.dll -Microsoft.Extensions.FileProviders.Abstractions.dll -Microsoft.Extensions.FileProviders.Physical.dll -Microsoft.Extensions.Configuration.EnvironmentVariables.dll -Microsoft.Extensions.Configuration.CommandLine.dll -System.Linq.dll -System.Memory.dll -Microsoft.Extensions.Hosting.Abstractions.dll -Microsoft.AspNetCore.Server.Kestrel.dll -Microsoft.AspNetCore.Server.Kestrel.Transport.Quic.dll -System.Net.Quic.dll -System.Diagnostics.Tracing.dll -Microsoft.Extensions.Features.dll -Microsoft.AspNetCore.Http.Abstractions.dll -Microsoft.AspNetCore.Http.dll -System.Diagnostics.DiagnosticSource.dll -Microsoft.AspNetCore.Mvc.Core.dll -Microsoft.AspNetCore.Razor.Runtime.dll -Microsoft.AspNetCore.Connections.Abstractions.dll -System.Net.Primitives.dll -Microsoft.AspNetCore.Hosting.Server.Abstractions.dll -System.Collections.Concurrent.dll -System.Threading.ThreadPool.dll -System.Text.Json.dll diff --git a/src/Framework/Framework.slnf b/src/Framework/Framework.slnf index 3004a42ed6ba..2c9d20af2aa1 100644 --- a/src/Framework/Framework.slnf +++ b/src/Framework/Framework.slnf @@ -21,8 +21,8 @@ "src\\Extensions\\Features\\src\\Microsoft.Extensions.Features.csproj", "src\\FileProviders\\Embedded\\src\\Microsoft.Extensions.FileProviders.Embedded.csproj", "src\\FileProviders\\Manifest.MSBuildTask\\src\\Microsoft.Extensions.FileProviders.Embedded.Manifest.Task.csproj", - "src\\Framework\\App.Ref\\src\\Microsoft.AspNetCore.App.Ref.csproj", - "src\\Framework\\App.Runtime\\src\\Microsoft.AspNetCore.App.Runtime.csproj", + "src\\Framework\\App.Ref\\src\\Microsoft.AspNetCore.App.Ref.sfxproj", + "src\\Framework\\App.Runtime\\src\\Microsoft.AspNetCore.App.Runtime.sfxproj", "src\\Framework\\AspNetCoreAnalyzers\\samples\\WebAppSample\\WebAppSample.csproj", "src\\Framework\\AspNetCoreAnalyzers\\src\\Analyzers\\Microsoft.AspNetCore.App.Analyzers.csproj", "src\\Framework\\AspNetCoreAnalyzers\\src\\CodeFixes\\Microsoft.AspNetCore.App.CodeFixes.csproj", diff --git a/src/Framework/test/Microsoft.AspNetCore.App.UnitTests.csproj b/src/Framework/test/Microsoft.AspNetCore.App.UnitTests.csproj index d559bd5b0fcb..d355b70ac3a1 100644 --- a/src/Framework/test/Microsoft.AspNetCore.App.UnitTests.csproj +++ b/src/Framework/test/Microsoft.AspNetCore.App.UnitTests.csproj @@ -77,7 +77,7 @@ - @@ -85,12 +85,14 @@ - - + + + <_TargetingPackDependencies Include="@(_TargetingPackFiles->WithMetadataValue('Extension','.dll'))" /> + <_Parameter1>TargetingPackDependencies <_Parameter2>@(_TargetingPackDependencies->'%(FileName)') diff --git a/src/Grpc/Interop/test/InteropTests/InteropTests.csproj b/src/Grpc/Interop/test/InteropTests/InteropTests.csproj index f5e9b3a9cbfd..dcdc7d16d586 100644 --- a/src/Grpc/Interop/test/InteropTests/InteropTests.csproj +++ b/src/Grpc/Interop/test/InteropTests/InteropTests.csproj @@ -9,7 +9,7 @@ - diff --git a/src/Installers/Debian/Directory.Build.props b/src/Installers/Debian/Directory.Build.props deleted file mode 100644 index df42b93c0fa9..000000000000 --- a/src/Installers/Debian/Directory.Build.props +++ /dev/null @@ -1,25 +0,0 @@ - - - - - $(InstallersOutputPath) - $(IntermediateOutputPath)$(TargetRuntimeIdentifier)\ - - - /usr/share/dotnet - - amd64 - - $(MSBuildThisFileDirectory)tools/build.sh - - - true - true - - - false - - diff --git a/src/Installers/Debian/Directory.Build.targets b/src/Installers/Debian/Directory.Build.targets deleted file mode 100644 index 2d854470f156..000000000000 --- a/src/Installers/Debian/Directory.Build.targets +++ /dev/null @@ -1,64 +0,0 @@ - - - - - $(OutputPath)$(TargetFileName) - - $(DebBuildDependsOn); - PrepareForBuild; - ResolveProjectReferences; - GetTargetPath; - - - - - - - - - - - - - - - - - - - - - - - - $(DebianConfigProperties); - AspNetCoreMajorVersion=$(AspNetCoreMajorVersion); - AspNetCoreMinorVersion=$(AspNetCoreMinorVersion); - Authors=$(Authors); - DebianPackageInstallRoot=$(DebianPackageInstallRoot); - MaintainerEmail=$(MaintainerEmail); - PackageId=$(PackageId); - PackageLicenseExpression=$(PackageLicenseExpression); - PackageProjectUrl=$(PackageProjectUrl); - PackageRevision=$(PackageRevision); - PackageVersion=$(DebPackageVersion); - PackageSummary=$(PackageSummary); - PackageDescription=$(PackageDescription); - - - - - - - - - - - $(PackageId)_$(DebPackageVersion)-$(PackageRevision)_$(DebianPackageArch).deb - - - - - diff --git a/src/Installers/Debian/Runtime/Debian.Runtime.debproj b/src/Installers/Debian/Runtime/Debian.Runtime.debproj deleted file mode 100644 index 343216335618..000000000000 --- a/src/Installers/Debian/Runtime/Debian.Runtime.debproj +++ /dev/null @@ -1,44 +0,0 @@ - - - - - - $(SharedFrameworkLayoutRoot) - - - $(RuntimeInstallerBaseName)-$(AspNetCoreMajorMinorVersion) - - - $(MicrosoftNETCoreAppRuntimeVersion) - $(DotnetRuntimeDependencyVersion.Substring(0, $(DotnetRuntimeDependencyVersion.IndexOf('-'))))~$(DotnetRuntimeDependencyVersion.Substring($([MSBuild]::Add($(DotnetRuntimeDependencyVersion.IndexOf('-')), 1)))) - $(MicrosoftNETCoreAppRuntimeVersion.Split('.')[0]).$(MicrosoftNETCoreAppRuntimeVersion.Split('.')[1]) - - $(SharedFxProductName) - $(SharedFxDescription) - - DotnetRuntimeDependencyMajorMinorVersion=$(DotnetRuntimeDependencyMajorMinorVersion); - DotnetRuntimeDependencyVersion=$(DotnetRuntimeDependencyVersion); - - - - - - - - - - - $(RuntimeInstallerBaseName)-$(SharedFxVersion)-x64.deb - $(TargetDir)$(TargetFileName) - - $(VersionPrefix) - - $(DebPackageVersion)~$(VersionSuffix) - 1 - - diff --git a/src/Installers/Debian/Runtime/debian_config.json.in b/src/Installers/Debian/Runtime/debian_config.json.in deleted file mode 100644 index 0bd5417702d7..000000000000 --- a/src/Installers/Debian/Runtime/debian_config.json.in +++ /dev/null @@ -1,36 +0,0 @@ -{ - "maintainer_name": "${Authors}", - "maintainer_email": "${MaintainerEmail}", - - "package_name": "${PackageId}", - "install_root": "${DebianPackageInstallRoot}", - - "short_description": "${PackageSummary}", - "long_description": "${PackageDescription}", - "homepage": "${PackageProjectUrl}", - - "release":{ - "package_version":"${PackageVersion}", - "package_revision":"${PackageRevision}", - "urgency" : "low", - "changelog_message" : "" - }, - - "control": { - "priority":"standard", - "section":"devel", - "architecture":"any" - }, - - "copyright": ".NET Foundation and Contributors", - "license": { - "type": "${PackageLicenseExpression}", - "full_text": "The MIT License (MIT)\n\nCopyright (c) .NET Foundation and Contributors\n\nAll rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE." - }, - - "debian_dependencies": { - "dotnet-runtime-${DotnetRuntimeDependencyMajorMinorVersion}": { - "package_version": "${DotnetRuntimeDependencyVersion}" - } - } -} diff --git a/src/Installers/Debian/TargetingPack/Debian.TargetingPack.debproj b/src/Installers/Debian/TargetingPack/Debian.TargetingPack.debproj deleted file mode 100644 index 5295906837c5..000000000000 --- a/src/Installers/Debian/TargetingPack/Debian.TargetingPack.debproj +++ /dev/null @@ -1,49 +0,0 @@ - - - - - - $(TargetingPackLayoutRoot) - - - $(TargetingPackInstallerBaseName)-$(AspNetCoreMajorMinorVersion) - - ASP.NET Core Targeting Pack - Provides a default set of APIs for building an ASP.NET Core $(AspNetCoreMajorMinorVersion) application. Contains reference assemblies, documentation, and other design-time assets. - - - $(MicrosoftNETCoreAppRefVersion) - $(DotnetTargetingPackDependencyVersion.Substring(0, $(DotnetTargetingPackDependencyVersion.IndexOf('-'))))~$(DotnetTargetingPackDependencyVersion.Substring($([MSBuild]::Add($(DotnetTargetingPackDependencyVersion.IndexOf('-')), 1)))) - $(MicrosoftNETCoreAppRefVersion.Split('.')[0]).$(MicrosoftNETCoreAppRefVersion.Split('.')[1]) - - $(SharedFxProductName) - $(SharedFxDescription) - - DotnetTargetingPackDependencyMajorMinorVersion=$(DotnetTargetingPackDependencyMajorMinorVersion); - DotnetTargetingPackDependencyVersion=$(DotnetTargetingPackDependencyVersion); - - - - - - - - - - - - $(TargetingPackInstallerBaseName)-$(TargetingPackVersion)-$(TargetArchitecture).deb - $(TargetDir)$(TargetFileName) - - $(TargetingPackVersionPrefix) - - $(DebPackageVersion)~$(VersionSuffix) - 1 - - - diff --git a/src/Installers/Debian/TargetingPack/debian_config.json.in b/src/Installers/Debian/TargetingPack/debian_config.json.in deleted file mode 100644 index 6ed5718d885b..000000000000 --- a/src/Installers/Debian/TargetingPack/debian_config.json.in +++ /dev/null @@ -1,36 +0,0 @@ -{ - "maintainer_name": "${Authors}", - "maintainer_email": "${MaintainerEmail}", - - "package_name": "${PackageId}", - "install_root": "${DebianPackageInstallRoot}", - - "short_description": "${PackageSummary}", - "long_description": "${PackageDescription}", - "homepage": "${PackageProjectUrl}", - - "release":{ - "package_version":"${PackageVersion}", - "package_revision":"${PackageRevision}", - "urgency" : "low", - "changelog_message" : "" - }, - - "control": { - "priority":"standard", - "section":"devel", - "architecture":"any" - }, - - "copyright": ".NET Foundation and Contributors", - "license": { - "type": "${PackageLicenseExpression}", - "full_text": "The MIT License (MIT)\n\nCopyright (c) .NET Foundation and Contributors\n\nAll rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE." - }, - - "debian_dependencies": { - "dotnet-targeting-pack-${DotnetTargetingPackDependencyMajorMinorVersion}": { - "package_version": "${DotnetTargetingPackDependencyVersion}" - } - } -} diff --git a/src/Installers/Debian/tools/build.sh b/src/Installers/Debian/tools/build.sh deleted file mode 100755 index 1ea557d7e3df..000000000000 --- a/src/Installers/Debian/tools/build.sh +++ /dev/null @@ -1,278 +0,0 @@ -#!/usr/bin/env bash -# -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# -set -e - -SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" - -## Load Functions ## -source $SCRIPT_DIR/scripts/debian_build_lib.sh - -## Debian Package Creation Functions ## -execute(){ - if ! parse_args_and_set_env_vars "$@"; then - exit 1 - fi - - # Exit if required validation fails - if ! validate_inputs; then - exit 1 - fi - - parse_config_and_set_env_vars - clean_or_create_build_dirs - package_all - generate_all - create_source_tarball - - # Actually Build Package Files - (cd ${PACKAGE_SOURCE_DIR}; debuild -us -uc) - - copy_files_to_output -} - -parse_args_and_set_env_vars(){ - OPTIND=1 # Reset in case getopts has been used previously in the shell. - - while getopts ":n:v:i:o:h:C:" opt; do - case $opt in - n) - export PACKAGE_NAME="$OPTARG" - ;; - v) - export PACKAGE_VERSION="$OPTARG" - ;; - i) - export INPUT_DIR="$OPTARG" - ;; - C) - export CONTENT_DIR="$OPTARG" - ;; - o) - export OUTPUT_DIR="$OPTARG" - ;; - h) - print_help - return 1 - ;; - \?) - echo "Invalid option: -$OPTARG" >&2 - return 1 - ;; - :) - echo "Option -$OPTARG requires an argument." >&2 - return 1 - ;; - esac - done - - # Special Input Directories + Paths - ABSOLUTE_PLACEMENT_DIR="${INPUT_DIR}/\$" - PACKAGE_ROOT_PLACEMENT_DIR="${CONTENT_DIR}" - CONFIG="$INPUT_DIR/debian_config.json" - - return 0 -} - -print_help(){ - echo "Usage: package_tool [-i ] [-o ] - [-n ] [-v ] [-h] - - REQUIRED: - -i : Input directory conforming to package_tool conventions and debian_config.json - -C : Directory containing the files which should be packaged. - -o : Output directory for debian package and other artifacts - - OPTIONAL: - -n : name of created package, will override value in debian_config.json - -v : version of created package, will override value in debian_config.json - -h: Show this message - - NOTES: - See Readme for more information on package_tool conventions and debian_config.json format - https://github.com/dotnet/cli/tree/master/packaging/debian/package_tool - " -} - -validate_inputs(){ - local ret=0 - if [[ -z "$INPUT_DIR" ]]; then - echo "ERROR: -i Not Specified" - ret=1 - fi - - if [[ -z "$OUTPUT_DIR" ]]; then - echo "ERROR: -o Not Specified." - ret=1 - fi - - if [[ -z "$CONTENT_DIR" ]]; then - echo "ERROR: -C Not Specified." - ret=1 - elif [[ ! -d "$PACKAGE_ROOT_PLACEMENT_DIR" ]]; then - echo "ERROR: '$PACKAGE_ROOT_PLACEMENT_DIR' directory does not exist" - ret=1 - fi - - if [[ ! -f "$CONFIG" ]]; then - echo "ERROR: debian_config.json file does not exist" - echo $CONFIG - ret=1 - fi - - return $ret -} - -parse_config_and_set_env_vars(){ - extract_base_cmd="python3 $SCRIPT_DIR/scripts/extract_json_value.py" - - # Arguments Take Precedence over Config - [ -z "$PACKAGE_VERSION" ] && PACKAGE_VERSION="$($extract_base_cmd $CONFIG "release.package_version")" - [ -z "$PACKAGE_NAME" ] && PACKAGE_NAME="$($extract_base_cmd $CONFIG "package_name")" - - # Inputs - INPUT_SAMPLES_DIR="$INPUT_DIR/samples" - INPUT_DOCS_DIR="$INPUT_DIR/docs" - DOCS_JSON_PATH="$INPUT_DIR/docs.json" - - PACKAGE_SOURCE_DIR="${OUTPUT_DIR}/${PACKAGE_NAME}-${PACKAGE_VERSION}" - - if ! INSTALL_ROOT="$($extract_base_cmd $CONFIG "install_root")"; then - INSTALL_ROOT="/usr/share/$PACKAGE_NAME" - fi - - DEBIAN_DIR="${PACKAGE_SOURCE_DIR}/debian" - DOCS_DIR="${PACKAGE_SOURCE_DIR}/docs" -} - -clean_or_create_build_dirs(){ - rm -rf ${PACKAGE_SOURCE_DIR} - mkdir -p $DEBIAN_DIR -} - -package_all(){ - package_static_files - package_package_root_placement - package_absolute_placement - package_samples - package_docs - package_install_scripts -} - -generate_all(){ - generate_config_templates - generate_manpages - generate_manpage_manifest - generate_sample_manifest - write_debian_install_file -} - -create_source_tarball(){ - rm -f ${OUTPUT_DIR}/${PACKAGE_NAME}_${PACKAGE_VERSION}.orig.tar.gz - tar -cvzf ${OUTPUT_DIR}/${PACKAGE_NAME}_${PACKAGE_VERSION}.orig.tar.gz -C $PACKAGE_SOURCE_DIR . -} - -copy_files_to_output(){ - # .deb, .dsc, etc.. Already in output dir - # Copy Test files - - cp $SCRIPT_DIR/test/integration_tests/test_package.bats $OUTPUT_DIR -} - -## Packaging Functions ## -package_static_files(){ - cp -a $SCRIPT_DIR/package_files/debian/* ${PACKAGE_SOURCE_DIR}/debian -} - -package_package_root_placement(){ - add_dir_to_install ${PACKAGE_ROOT_PLACEMENT_DIR} "" -} - -package_absolute_placement(){ - if [[ -d "$ABSOLUTE_PLACEMENT_DIR" ]]; then - abs_in_package_dir="\$" - - add_dir_to_install ${ABSOLUTE_PLACEMENT_DIR} $abs_in_package_dir - - # Get List of all files in directory tree, relative to ABSOLUTE_PLACEMENT_DIR - abs_files=( $(_get_files_in_dir_tree $ABSOLUTE_PLACEMENT_DIR) ) - - # For each file add a a system placement - for abs_file in ${abs_files[@]} - do - parent_dir=$(dirname $abs_file) - filename=$(basename $abs_file) - - add_system_file_placement "$abs_in_package_dir/$abs_file" "/$parent_dir" - done - fi -} - -package_samples(){ - if [[ -d "$INPUT_SAMPLES_DIR" ]]; then - cp -a $INPUT_SAMPLES_DIR/. $PACKAGE_SOURCE_DIR - fi -} - -package_docs(){ - if [[ -d "$INPUT_DOCS_DIR" ]]; then - mkdir -p $DOCS_DIR - cp -a $INPUT_DOCS_DIR/. $DOCS_DIR - fi -} - -package_install_scripts(){ - # copy scripts for the package's control section like preinst, postint, etc - if [[ -d "$INPUT_DIR/debian" ]]; then - cp -a "$INPUT_DIR/debian/." $DEBIAN_DIR - fi -} - -## Generation Functions ## -generate_config_templates(){ - python3 ${SCRIPT_DIR}/scripts/config_template_generator.py $CONFIG $SCRIPT_DIR/templates/debian $DEBIAN_DIR $PACKAGE_NAME $PACKAGE_VERSION -} - -generate_manpages(){ - if [[ -f "$DOCS_JSON_PATH" ]]; then - mkdir -p $DOCS_DIR - - # Generate the manpages from json spec - python3 ${SCRIPT_DIR}/scripts/manpage_generator.py ${DOCS_JSON_PATH} ${DOCS_DIR} - fi -} - -generate_manpage_manifest(){ - # Get a list of files generated relative to $DOCS_DIR - generated_manpages=( $(_get_files_in_dir_tree $DOCS_DIR) ) - - # Get path relative to $PACKAGE_SOURCE_DIR to prepend to each filename - # This syntax is bash substring removal - docs_rel_path=${DOCS_DIR#${PACKAGE_SOURCE_DIR}/} - - # Remove any existing manifest - rm -f ${DEBIAN_DIR}/${PACKAGE_NAME}.manpages - - for manpage in ${generated_manpages[@]} - do - echo "${docs_rel_path}/${manpage}" >> "${DEBIAN_DIR}/${PACKAGE_NAME}.manpages" - done -} - -generate_sample_manifest(){ - if [[ -d "$INPUT_SAMPLES_DIR" ]]; then - generated_manpages=( $(_get_files_in_dir_tree $INPUT_SAMPLES_DIR) ) - - rm -f sample_manifest - for sample in ${samples[@]} - do - echo "$sample" >> "${DEBIAN_DIR}/${PACKAGE_NAME}.examples" - done - else - echo "Provide a 'samples' directory in INPUT_DIR to package samples" - fi -} - -execute "$@" diff --git a/src/Installers/Debian/tools/package_files/debian/compat b/src/Installers/Debian/tools/package_files/debian/compat deleted file mode 100644 index f599e28b8ab0..000000000000 --- a/src/Installers/Debian/tools/package_files/debian/compat +++ /dev/null @@ -1 +0,0 @@ -10 diff --git a/src/Installers/Debian/tools/package_files/debian/source/format b/src/Installers/Debian/tools/package_files/debian/source/format deleted file mode 100644 index 163aaf8d82b6..000000000000 --- a/src/Installers/Debian/tools/package_files/debian/source/format +++ /dev/null @@ -1 +0,0 @@ -3.0 (quilt) diff --git a/src/Installers/Debian/tools/scripts/config_template_generator.py b/src/Installers/Debian/tools/scripts/config_template_generator.py deleted file mode 100755 index 3ce9f2c7c188..000000000000 --- a/src/Installers/Debian/tools/scripts/config_template_generator.py +++ /dev/null @@ -1,267 +0,0 @@ -#!/usr/bin/python3 -# -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# - -# Parses debian_config.json and generates appropriate templates -# Where optional defaults exist, they are defined in the template_dict -# of the appropriate generation function - -import os -import sys -import json -import datetime - -FILE_CHANGELOG = 'changelog' -FILE_CONTROL = 'control' -FILE_COPYRIGHT = 'copyright' -FILE_SYMLINK_FORMAT = '{package_name}.links' -FILE_RULES = 'rules' - -PACKAGE_ROOT_FORMAT = "usr/share/{package_name}" -CHANGELOG_DATE_FORMAT = "%a, %d %b %Y %H:%M:%S %z" - -# UTC Timezone for Changelog date -class UTC(datetime.tzinfo): - def utcoffset(self, dt): - return datetime.timedelta(0) - - def tzname(self, dt): - return "UTC" - - def dst(self, dt): - return datetime.timedelta(0) - -# Generation Functions -def generate_and_write_all(config_data, template_dir, output_dir, package_name=None, package_version=None): - try: - changelog_contents = generate_changelog( - config_data, - template_dir, - package_name=package_name, - package_version=package_version) - - control_contents = generate_control(config_data, template_dir, package_name=package_name) - copyright_contents = generate_copyright(config_data, template_dir) - symlink_contents = generate_symlinks(config_data, package_name=package_name) - rules_contents = generate_rules(config_data, template_dir) - except Exception as exc: - print(exc) - help_and_exit("Error: Generation Failed, check your config file.") - - write_file(changelog_contents, output_dir, FILE_CHANGELOG) - write_file(control_contents, output_dir, FILE_CONTROL) - write_file(copyright_contents, output_dir, FILE_COPYRIGHT) - write_file(rules_contents, output_dir, FILE_RULES) - - # Symlink File is optional - if symlink_contents: - symlink_filename = get_symlink_filename(config_data, package_name=package_name) - write_file(symlink_contents, output_dir, symlink_filename) - - return - -def generate_rules(config_data, template_dir): - template = get_template(template_dir, FILE_RULES) - - ignored_dependency_packages = config_data.get("debian_ignored_dependencies", None) - override_text = "" - - if ignored_dependency_packages != None: - override_text = "override_dh_shlibdeps:\n\tdh_shlibdeps --dpkg-shlibdeps-params=\"" - - for package in ignored_dependency_packages: - override_text += "-x{0} ".format(package) - - override_text += "\"" - - return template.format(overrides=override_text) - -def generate_changelog(config_data, template_dir, package_version=None, package_name=None): - template = get_template(template_dir, FILE_CHANGELOG) - - release_data = config_data["release"] - - # Allow for Version Override - config_package_version = release_data["package_version"] - package_version = package_version or config_package_version - - template_dict = dict(\ - PACKAGE_VERSION=package_version, - PACKAGE_REVISION=release_data["package_revision"], - CHANGELOG_MESSAGE=release_data["changelog_message"], - URGENCY=release_data.get("urgency", "low"), - - PACKAGE_NAME=package_name or config_data["package_name"], - MAINTAINER_NAME=config_data["maintainer_name"], - MAINTAINER_EMAIL=config_data["maintainer_email"], - DATE=datetime.datetime.now(UTC()).strftime(CHANGELOG_DATE_FORMAT) - ) - - contents = template.format(**template_dict) - - return contents - -def generate_control(config_data, template_dir, package_name=None): - template = get_template(template_dir, FILE_CONTROL) - - dependency_data = config_data.get("debian_dependencies", None) - dependency_str = get_dependendent_packages_string(dependency_data) - - conflict_data = config_data.get("package_conflicts", []) - conflict_str = ', '.join(conflict_data) - - # Default to empty dict, so we don't explode on nested optional values - control_data = config_data.get("control", dict()) - - template_dict = dict(\ - SHORT_DESCRIPTION=config_data["short_description"], - LONG_DESCRIPTION=config_data["long_description"], - HOMEPAGE=config_data.get("homepage", ""), - - SECTION=control_data.get("section", "misc"), - PRIORITY=control_data.get("priority", "low"), - ARCH=control_data.get("architecture", "all"), - - DEPENDENT_PACKAGES=dependency_str, - CONFLICT_PACKAGES=conflict_str, - - PACKAGE_NAME=package_name or config_data["package_name"], - MAINTAINER_NAME=config_data["maintainer_name"], - MAINTAINER_EMAIL=config_data["maintainer_email"] - ) - - contents = template.format(**template_dict) - - return contents - -def generate_copyright(config_data, template_dir): - template = get_template(template_dir, FILE_COPYRIGHT) - - license_data = config_data["license"] - - template_dict = dict(\ - COPYRIGHT_TEXT=config_data["copyright"], - LICENSE_NAME=license_data["type"], - LICENSE_TEXT=license_data["full_text"] - ) - - contents = template.format(**template_dict) - - return contents - -def generate_symlinks(config_data, package_name=None): - symlink_entries = [] - package_root_path = get_package_root(config_data, package_name=package_name) - - symlink_data = config_data.get("symlinks", dict()) - - for package_rel_path, symlink_path in iter(symlink_data.items()): - - package_abs_path = os.path.join(package_root_path, package_rel_path) - - symlink_entries.append( '%s %s' % (package_abs_path, symlink_path) ) - - return '\n'.join(symlink_entries) - -# Helper Functions -def get_package_root(config_data, package_name=None): - config_install_root = config_data.get("install_root", None) - package_name = package_name or config_data["package_name"] - - return config_install_root or PACKAGE_ROOT_FORMAT.format(package_name=package_name) - -def get_symlink_filename(config_data, package_name=None): - package_name = package_name or config_data["package_name"] - return FILE_SYMLINK_FORMAT.format(package_name=package_name) - -def get_dependendent_packages_string(debian_dependency_data): - if debian_dependency_data is None: - return "" - - dependencies = [] - - for debian_package_name in debian_dependency_data: - dep_str = debian_package_name - - if debian_dependency_data[debian_package_name].get("package_version", None): - debian_package_version = debian_dependency_data[debian_package_name].get("package_version") - - dep_str += " (>= %s)" % debian_package_version - - dependencies.append(dep_str) - - # Leading Comma is important here - return ', ' + ', '.join(dependencies) - - -def load_json(json_path): - json_data = None - with open(json_path, 'r') as json_file: - json_data = json.load(json_file) - - return json_data - -def get_template(template_dir, name): - path = os.path.join(template_dir, name) - template_contents = None - - with open(path, 'r') as template_file: - template_contents = template_file.read() - - return template_contents - -def write_file(contents, output_dir, name): - path = os.path.join(output_dir, name) - - with open(path, 'w') as out_file: - out_file.write(contents) - - return - -# Tool Functions -def help_and_exit(msg): - print(msg) - sys.exit(1) - -def print_usage(): - print("Usage: config_template_generator.py [config file path] [template directory path] [output directory] (package name) (package version)") - -def parse_and_validate_args(): - if len(sys.argv) < 4: - print_usage() - help_and_exit("Error: Invalid Arguments") - - config_path = sys.argv[1] - template_dir = sys.argv[2] - output_dir = sys.argv[3] - name_override = None - version_override = None - - if len(sys.argv) >= 5: - name_override = sys.argv[4] - - if len(sys.argv) >= 6: - version_override = sys.argv[5] - - if not os.path.isfile(config_path): - help_and_exit("Error: Invalid config file path") - - if not os.path.isdir(template_dir): - help_and_exit("Error: Invalid template directory path") - - if not os.path.isdir(output_dir): - help_and_exit("Error: Invalid output directory path") - - return (config_path, template_dir, output_dir, name_override, version_override) - -def execute(): - config_path, template_dir, output_dir, name_override, version_override = parse_and_validate_args() - - config_data = load_json(config_path) - - generate_and_write_all(config_data, template_dir, output_dir, package_name = name_override, package_version=version_override) - -if __name__ == "__main__": - execute() diff --git a/src/Installers/Debian/tools/scripts/debian_build_lib.sh b/src/Installers/Debian/tools/scripts/debian_build_lib.sh deleted file mode 100755 index 8aa53420f9f7..000000000000 --- a/src/Installers/Debian/tools/scripts/debian_build_lib.sh +++ /dev/null @@ -1,170 +0,0 @@ -# -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# - -# This file is not intended to be executed directly -# Import these functions using source -# -# Relies on these environment variables: -# PACKAGE_SOURCE_DIR :: Package Source Staging Directory -# INSTALL_ROOT :: Absolute path of package installation root - -# write_debian_install_file -# Summary: Writes the contents of the "install_placement" array to the debian/install -# This array is populated by calls to the "add_system_file_placement" function -# Usage: write_debian_install_file -write_debian_install_file(){ - # Remove any existing install file, we need to overwrite it - rm -f ${PACKAGE_SOURCE_DIR}/debian/install - - for i in "${install_placement[@]}" - do - echo "${i}" >> "${PACKAGE_SOURCE_DIR}/debian/install" - done -} - -# add_system_file_placement -# Summary: Registers a file placement on the filesystem from the package by populating the "install_placement" array -# Usage: add_system_file_placement {local path of file in package} {absolute path of directory to place file in} -add_system_file_placement(){ - #Initialize placement_index variable - if [[ -z "$placement_index" ]]; then - placement_index=0 - fi - - install_placement[${placement_index}]="${1} ${2}" - placement_index=$((${placement_index}+1)) -} - -# add_system_dir_placement -# Summary: Registers a directory placement on the post-installation package from an in-package path -add_system_dir_placement(){ - - in_package_dir=$1 - abs_installation_dir=$2 - - dir_files=( $(_get_files_in_dir_tree $PACKAGE_SOURCE_DIR/$in_package_dir) ) - - # If in_package_dir isn't empty include a slash - if [ ! -z "$in_package_dir" ]; then - in_package_dir="${in_package_dir}/" - fi - - for rel_filepath in ${dir_files[@]} - do - local parent_path=$(dirname $rel_filepath) - - # If there is no parent, parent_path = "." - if [[ "$parent_path" == "." ]]; then - add_system_file_placement "${in_package_dir}${rel_filepath}" "${abs_installation_dir}" - else - add_system_file_placement "${in_package_dir}${rel_filepath}" "${abs_installation_dir}/${parent_path}" - fi - - done -} - -# add_file_to_install -# Summary: Adds a file from the local filesystem to the package and installs it rooted at INSTALL_ROOT -# Usage: add_install_file {relative path to local file} {relative path to INSTALL_ROOT to place file} -add_file_to_install(){ - copy_from_file=$1 - rel_install_path=$2 - - local filename=$(basename $copy_from_file) - local parent_dir=$(dirname $copy_from_file) - - # Create Relative Copy From Path - rel_copy_from_file=${copy_from_file#$parent_dir/} - - # Delete any existing file and ensure path exists - rm -f ./${PACKAGE_SOURCE_DIR}/${rel_install_path}/${filename} - mkdir -p ./${PACKAGE_SOURCE_DIR}/${rel_install_path} - - dir_files=( "$rel_copy_from_file" ) - - _copy_files_to_package $parent_dir $rel_install_path "${dir_files[@]}" - - add_system_file_placement "${rel_install_path}/${filename}" "${INSTALL_ROOT}/$rel_install_path" -} - -# add_dir_to_install -# Summary: Adds contents of a directory on the local filesystem to the package and installs them rooted at INSTALL_ROOT -# Note: Does not install the directory passed, only its contents -# Usage: add_dir_to_install {relative path of directory to copy} {relative path to INSTALL_ROOT to place directory tree} -add_dir_to_install(){ - - copy_from_dir=$1 - rel_install_path=$2 - - # Delete and Create any existing directory - mkdir -p ${PACKAGE_SOURCE_DIR}/${rel_install_path} - - dir_files=( $(_get_files_in_dir_tree $copy_from_dir) ) - - _copy_files_to_package "$copy_from_dir" "$rel_install_path" "${dir_files[@]}" - - for file in "${dir_files[@]}" - do - file_rel_dir="$(dirname $file)" - add_system_file_placement "${rel_install_path}/${file}" "${INSTALL_ROOT}/$rel_install_path/${file_rel_dir}" - done -} - -# Usage: _copy_files_to_package {local files root directory} {relative directory in package to copy to} "${filepath_array[@]}" -# Note: The specific syntax on the parameter shows how to pass an array -_copy_files_to_package(){ - local_root_dir=$1 - package_dest_dir=$2 - - # Consume the remaining input as an array - shift; shift; - rel_filepath_list=( $@ ) - - for rel_filepath in ${rel_filepath_list[@]} - do - local parent_dir=$(dirname $rel_filepath) - local filename=$(basename $rel_filepath) - - mkdir -p ${PACKAGE_SOURCE_DIR}/${package_dest_dir}/${parent_dir} - - # Ignore $parent_dir if it there isn't one - if [[ "$parent_dir" == "." ]]; then - cp "${local_root_dir}/${rel_filepath}" "${PACKAGE_SOURCE_DIR}/${package_dest_dir}" - else - cp "${local_root_dir}/${rel_filepath}" "${PACKAGE_SOURCE_DIR}/${package_dest_dir}/${parent_dir}" - fi - - done -} - -# Usage: _get_files_in_dir_tree {path of directory} -_get_files_in_dir_tree(){ - - root_dir=$1 - - # Use Globstar expansion to enumerate all directories and files in the tree - shopt -s globstar - shopt -s dotglob - dir_tree_list=( "${root_dir}/"** ) - - # Build a new array with only the Files contained in $dir_tree_list - local index=0 - for file_path in "${dir_tree_list[@]}" - do - if [ -f $file_path ]; then - dir_tree_file_list[${index}]=$file_path - index=$(($index+1)) - fi - done - - # Remove $root_dir prefix from each path in dir_tree_file_list - # This is confusing syntax, so here's a reference link (Substring Removal) - # http://wiki.bash-hackers.org/syntax/pe - dir_tree_file_list=( "${dir_tree_file_list[@]#${root_dir}/}" ) - - # Echo is the return mechanism - echo "${dir_tree_file_list[@]}" -} - diff --git a/src/Installers/Debian/tools/scripts/extract_json_value.py b/src/Installers/Debian/tools/scripts/extract_json_value.py deleted file mode 100755 index 45f26833f5bb..000000000000 --- a/src/Installers/Debian/tools/scripts/extract_json_value.py +++ /dev/null @@ -1,64 +0,0 @@ -#!/usr/bin/python3 -# -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# - -# Extract Json Value -# -# Very simple tool to ease extracting json values from the cmd line. -import os -import sys -import json - -def print_usage(): - print(""" - Usage: extract_json_value.py [json file path] [key of value to extract] - For nested keys, use . separator - """) - -def help_and_exit(msg=None): - print(msg) - print_usage() - sys.exit(1) - -def parse_and_validate_args(): - - if len(sys.argv) < 3: - help_and_exit(msg="Error: Invalid Args") - - json_path = sys.argv[1] - json_key = sys.argv[2] - - if not os.path.isfile(json_path): - help_and_exit("Error: Invalid json file path") - - return json_path, json_key - -def extract_key(json_path, json_key): - json_data = None - - with open(json_path, 'r') as json_file: - json_data = json.load(json_file) - - nested_keys = json_key.split('.') - json_context = json_data - - for key in nested_keys: - json_context = json_context.get(key, None) - - if json_context is None: - help_and_exit("Error: Invalid json key") - - return str(json_context) - -def execute(): - json_path, json_key = parse_and_validate_args() - - value = extract_key(json_path, json_key) - - return value - -if __name__ == "__main__": - print(execute()) - diff --git a/src/Installers/Debian/tools/scripts/manpage_generator.py b/src/Installers/Debian/tools/scripts/manpage_generator.py deleted file mode 100755 index 56a2c2a1e1d0..000000000000 --- a/src/Installers/Debian/tools/scripts/manpage_generator.py +++ /dev/null @@ -1,303 +0,0 @@ -#!/usr/bin/python3 -# -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# - -# manpage_generator -# Converts top level docs.json format command info to -# nroff manpage format. Done in python for easy json parsing. -# -# Usage: argv[1] = path to docs.json; argv[2] = output path - -import sys -import os -import json -import datetime - -SECTION_SEPARATOR = "\n.P \n" -MANPAGE_EXTENSION = ".1" - -# For now this is a magic number -# See https://www.debian.org/doc/manuals/maint-guide/dother.en.html#manpage -SECTION_NUMBER = 1 - -def generate_man_pages(doc_path, output_dir): - - with open(doc_path) as doc_file: - doc_json = None - try: - doc_json = json.load(doc_file) - except: - raise Exception("Failed to load json file. Check formatting.") - - tools = doc_json.get("tools", None) - - if tools is None: - raise Exception("No tool sections in doc.json") - - for tool_name in tools: - tool_data = tools[tool_name] - - man_page_content = generate_man_page(tool_name, tool_data) - man_page_path = get_output_path(tool_name, output_dir) - - write_man_page(man_page_path, man_page_content) - -def get_output_path(toolname, output_dir): - out_filename = toolname + MANPAGE_EXTENSION - - return os.path.join(output_dir, out_filename) - -def write_man_page(path, content): - with open(path, 'w') as man_file: - man_file.write(content) - - #Build Fails without a final newline - man_file.write('\n') - -def generate_man_page(tool_name, tool_data): - - sections = [ - generate_header_section(tool_name, tool_data), - generate_name_section(tool_name, tool_data), - generate_synopsis_section(tool_name, tool_data), - generate_description_section(tool_name, tool_data), - generate_options_section(tool_name, tool_data), - generate_author_section(tool_name, tool_data), - generate_copyright_section(tool_name, tool_data) - ] - - return SECTION_SEPARATOR.join(sections) - -def generate_header_section(tool_name, tool_data):# - roff_text_builder = [] - - header_format = ".TH {program_name} {section_number} {center_footer} {left_footer} {center_header}" - - today = datetime.date.today() - today_string = today.strftime("%B %d, %Y") - - format_args = { - "program_name" : tool_name, - "section_number" : SECTION_NUMBER, - "center_footer" : "", # Omitted - "left_footer" : "", # Omitted - "center_header" : "" # Omitted - } - - roff_text_builder.append(header_format.format(**format_args)) - - return SECTION_SEPARATOR.join(roff_text_builder) - -def generate_name_section(tool_name, tool_data):# - roff_text_builder = [] - roff_text_builder.append(".SH NAME") - - tool_short_description = tool_data.get("short_description", "") - name_format = ".B {program_name} - {short_description}" - - name_format_args = { - "program_name": tool_name, - "short_description" : tool_short_description - } - - roff_text_builder.append(name_format.format(**name_format_args)) - - return SECTION_SEPARATOR.join(roff_text_builder) - -def generate_synopsis_section(tool_name, tool_data):# - roff_text_builder = [] - roff_text_builder.append(".SH SYNOPSIS") - - synopsis_format = '.B {program_name} {command_name} \n.RI {options} " "\n.I "{argument_list_name}"' - - tool_commands = tool_data.get("commands", []) - for command_name in tool_commands: - command_data = tool_commands[command_name] - - # Default options to empty list so the loop doesn't blow up - options = command_data.get("options", []) - argument_list = command_data.get("argumentlist", None) - - # Construct Option Strings - option_string_list = [] - argument_list_name = "" - - for option_name in options: - option_data = options[option_name] - - specifier_short = option_data.get("short", None) - specifier_long = option_data.get("long", None) - parameter = option_data.get("parameter", None) - - option_string = _option_string_helper(specifier_short, specifier_long, parameter) - - option_string_list.append(option_string) - - # Populate Argument List Name - if argument_list: - argument_list_name = argument_list.get("name", "") - - cmd_format_args = { - 'program_name' : tool_name, - 'command_name' : command_name, - 'options' : '" "'.join(option_string_list), - 'argument_list_name' : argument_list_name - } - - cmd_string = synopsis_format.format(**cmd_format_args) - - roff_text_builder.append(cmd_string) - - return SECTION_SEPARATOR.join(roff_text_builder) - -def generate_description_section(tool_name, tool_data):# - roff_text_builder = [] - roff_text_builder.append(".SH DESCRIPTION") - - # Tool Description - long_description = tool_data.get("long_description", "") - roff_text_builder.append(".PP {0}".format(long_description)) - - # Command Descriptions - cmd_description_format = ".B {program_name} {command_name}\n{command_description}" - - tool_commands = tool_data.get("commands", []) - for command_name in tool_commands: - command_data = tool_commands[command_name] - - command_description = command_data.get("description", "") - - format_args = { - "program_name" : tool_name, - "command_name" : command_name, - "command_description" : command_description - } - - cmd_string = cmd_description_format.format(**format_args) - - roff_text_builder.append(cmd_string) - - return SECTION_SEPARATOR.join(roff_text_builder) - -def generate_options_section(tool_name, tool_data):# - roff_text_builder = [] - roff_text_builder.append(".SH OPTIONS") - - options_format = '.TP\n.B {option_specifiers}\n{option_description}' - - tool_commands = tool_data.get("commands", []) - for command_name in tool_commands: - command_data = tool_commands[command_name] - - # Default to empty list so the loop doesn't blow up - options = command_data.get("options", []) - - for option_name in options: - option_data = options[option_name] - - specifier_short = option_data.get("short", None) - specifier_long = option_data.get("long", None) - parameter = option_data.get("parameter", None) - description = option_data.get("description", "") - - option_specifiers_string = _option_string_helper(specifier_short, - specifier_long, - parameter, - include_brackets = False, - delimiter=' ", " ') - - format_args = { - "option_specifiers": option_specifiers_string, - "option_description" : description - } - - roff_text_builder.append(options_format.format(**format_args)) - - return SECTION_SEPARATOR.join(roff_text_builder) - -def generate_author_section(tool_name, tool_data):# - roff_text_builder = [] - roff_text_builder.append(".SH AUTHOR") - - author_format = '.B "{author_name}" " " \n.RI ( "{author_email}" )' - - author_name = tool_data.get("author", "") - author_email = tool_data.get("author_email", "") - - format_args = { - "author_name" : author_name, - "author_email" : author_email - } - - roff_text_builder.append(author_format.format(**format_args)) - - return SECTION_SEPARATOR.join(roff_text_builder) - -def generate_copyright_section(tool_name, tool_data):# - roff_text_builder = [] - roff_text_builder.append(".SH COPYRIGHT") - - copyright_data = tool_data.get("copyright") - - roff_text_builder.append('.B "{0}"'.format(copyright_data)) - - return SECTION_SEPARATOR.join(roff_text_builder) - -def _option_string_helper(specifier_short, specifier_long, parameter, include_brackets = True, delimiter = " | "): - option_string = "" - - if include_brackets: - option_string = " [ " - - if specifier_short: - option_string += ' "{0}" '.format(specifier_short) - - if specifier_short and specifier_long: - option_string += delimiter - - if specifier_long: - option_string += ' "{0}" '.format(specifier_long) - - if parameter: - option_string += ' " " ' - option_string += ' "{0}" '.format(parameter) - - if include_brackets: - option_string += " ] " - - return option_string - - -def print_usage(): - print("Usage: argv[1] = path to docs.json; argv[2] = output path") - print("Example: manpage_generator.py ../docs.json ./dotnet-1.0/debian") - -def parse_args(): - doc_path = sys.argv[1] - output_dir = sys.argv[2] - - return (doc_path, output_dir) - -def validate_args(doc_path, output_dir): - if not os.path.isfile(doc_path): - raise Exception("Docs.json path is not valid.") - - if not os.path.isdir(output_dir): - raise Exception("Output Directory Path is not valid.") - -def execute_command_line(): - try: - doc_path, output_dir = parse_args() - - validate_args(doc_path, output_dir) - - generate_man_pages(doc_path, output_dir) - - except Exception as exc: - print("Error: ", exc) - print_usage() - -if __name__ == "__main__": - execute_command_line() diff --git a/src/Installers/Debian/tools/setup/build_setup.sh b/src/Installers/Debian/tools/setup/build_setup.sh deleted file mode 100755 index 269aff50ef7d..000000000000 --- a/src/Installers/Debian/tools/setup/build_setup.sh +++ /dev/null @@ -1,20 +0,0 @@ -# -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# - -install_dependencies(){ - # Add LLdb 3.6 package source - echo "deb http://llvm.org/apt/trusty/ llvm-toolchain-trusty-3.6 main" | tee /etc/apt/sources.list.d/llvm.list - wget -O - http://llvm.org/apt/llvm-snapshot.gpg.key | apt-key add - - - #Install Deps - apt-get update - apt-get install -y debhelper build-essential devscripts git liblttng-ust-dev lldb-3.6-dev -} - -setup(){ - install_dependencies -} - -setup \ No newline at end of file diff --git a/src/Installers/Debian/tools/setup/test_setup.sh b/src/Installers/Debian/tools/setup/test_setup.sh deleted file mode 100755 index 47442fd60356..000000000000 --- a/src/Installers/Debian/tools/setup/test_setup.sh +++ /dev/null @@ -1,27 +0,0 @@ -# -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# - -install_dependencies(){ - # Add LLdb 3.6 package source - echo "deb http://llvm.org/apt/trusty/ llvm-toolchain-trusty-3.6 main" | tee /etc/apt/sources.list.d/llvm.list - wget -O - http://llvm.org/apt/llvm-snapshot.gpg.key | apt-key add - - - #Install Deps - apt-get update - apt-get install -y debhelper build-essential devscripts git liblttng-ust-dev lldb-3.6-dev -} - -install_bats(){ - git clone https://github.com/sstephenson/bats.git - cd bats - ./install.sh /usr/local -} - -setup(){ - install_dependencies - install_bats -} - -setup \ No newline at end of file diff --git a/src/Installers/Debian/tools/templates/debian/changelog b/src/Installers/Debian/tools/templates/debian/changelog deleted file mode 100644 index 8eccaab397c6..000000000000 --- a/src/Installers/Debian/tools/templates/debian/changelog +++ /dev/null @@ -1,5 +0,0 @@ -{PACKAGE_NAME} ({PACKAGE_VERSION}-{PACKAGE_REVISION}) unstable; urgency={URGENCY} - - * {CHANGELOG_MESSAGE} - - -- {MAINTAINER_NAME} <{MAINTAINER_EMAIL}> {DATE} diff --git a/src/Installers/Debian/tools/templates/debian/control b/src/Installers/Debian/tools/templates/debian/control deleted file mode 100644 index 739c37b4ed5c..000000000000 --- a/src/Installers/Debian/tools/templates/debian/control +++ /dev/null @@ -1,19 +0,0 @@ -# -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# - -Source: {PACKAGE_NAME} -Maintainer: {MAINTAINER_NAME} <{MAINTAINER_EMAIL}> -Section: {SECTION} -Priority: {PRIORITY} -Standards-Version: 3.9.2 -Build-Depends: debhelper (>=9) -Homepage: {HOMEPAGE} - -Package: {PACKAGE_NAME} -Architecture: {ARCH} -Depends: ${{misc:Depends}}{DEPENDENT_PACKAGES} -Conflicts: {CONFLICT_PACKAGES} -Description: {SHORT_DESCRIPTION} - {LONG_DESCRIPTION} diff --git a/src/Installers/Debian/tools/templates/debian/copyright b/src/Installers/Debian/tools/templates/debian/copyright deleted file mode 100644 index 1fe22df1b722..000000000000 --- a/src/Installers/Debian/tools/templates/debian/copyright +++ /dev/null @@ -1,10 +0,0 @@ -Comment: Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information. - -Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ - -Files: * -Copyright: {COPYRIGHT_TEXT} -License: {LICENSE_NAME} - -License: {LICENSE_NAME} - {LICENSE_TEXT} \ No newline at end of file diff --git a/src/Installers/Debian/tools/templates/debian/rules b/src/Installers/Debian/tools/templates/debian/rules deleted file mode 100644 index 6f32006c48a5..000000000000 --- a/src/Installers/Debian/tools/templates/debian/rules +++ /dev/null @@ -1,14 +0,0 @@ -#!/usr/bin/make -f -# -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# - -{overrides} - -override_dh_builddeb: - dh_builddeb -- -Zxz - -%: - dh $@ - diff --git a/src/Installers/Debian/tools/test.sh b/src/Installers/Debian/tools/test.sh deleted file mode 100755 index 9adde436f4dc..000000000000 --- a/src/Installers/Debian/tools/test.sh +++ /dev/null @@ -1,41 +0,0 @@ -# -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# - -DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" - -current_user=$(whoami) -if [ $current_user != "root" ]; then - echo "test.sh requires superuser privileges to run" - exit 1 -fi - -run_unit_tests(){ - bats $DIR/test/unit_tests/test_debian_build_lib.bats - bats $DIR/test/unit_tests/test_scripts.bats -} - -run_integration_tests(){ - input_dir=$DIR/test/test_assets/test_package_layout - output_dir=$DIR/bin - - # Create output dir - mkdir -p $output_dir - - # Build the actual package - $DIR/package_tool -i $input_dir -o $output_dir - - # Integration Test Entrypoint placed by package_tool - bats $output_dir/test_package.bats - - # Cleanup output dir - rm -rf $DIR/test/test_assets/test_package_output -} - -run_all(){ - run_unit_tests - run_integration_tests -} - -run_all diff --git a/src/Installers/Debian/tools/test/integration_tests/test_package.bats b/src/Installers/Debian/tools/test/integration_tests/test_package.bats deleted file mode 100755 index 8f4c7505388b..000000000000 --- a/src/Installers/Debian/tools/test/integration_tests/test_package.bats +++ /dev/null @@ -1,80 +0,0 @@ -#!/bin/bash -# -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# -# This script is used to test the debian package after it's creation. -# The package tool will drop it next to the .deb file it creates. -# Environment Variables: -# LAST_VERSION_URL: Url for last version .deb (to test upgrades) [required for upgrade test] - -#Ensure running with superuser privileges -current_user=$(whoami) -if [ $current_user != "root" ]; then - echo "WARNING: test_package.bats requires superuser privileges to run, trying sudo..." - SUDO_PREFIX="sudo" -fi - -setup(){ - DIR="$BATS_TEST_DIRNAME" - - PACKAGE_FILENAME="$(ls $DIR | grep .deb -m 1)" - PACKAGE_PATH="$DIR/*.deb" - - # Get Package name from package path, - PACKAGE_NAME=${PACKAGE_FILENAME%%_*} -} - -install_package(){ - $SUDO_PREFIX dpkg -i $PACKAGE_PATH -} - -remove_package(){ - $SUDO_PREFIX dpkg -r $PACKAGE_NAME -} - -purge_package(){ - $SUDO_PREFIX dpkg -P $PACKAGE_NAME -} - -install_last_version(){ - $SUDO_PREFIX dpkg -i "$DIR/last_version.deb" -} - -download_and_install_last_version(){ - curl "$LAST_VERSION_URL" -o "$DIR/last_version.deb" - - install_last_version -} - -delete_last_version(){ - rm -f "$DIR/last_version.deb" -} - -teardown(){ - delete_last_version -} - -@test "package install + removal test" { - install_package - remove_package -} - -@test "package install + purge test" { - install_package - purge_package -} - -# Ultimate Package Test -# https://www.debian.org/doc/manuals/maint-guide/checkit.en.html#pmaintscripts -@test "package install + upgrade + purge + install + remove + install + purge test" { - if [ ! -z "$LAST_VERSION_URL" ]; then - download_and_install_last_version - install_package - purge_package - install_package - remove_package - install_package - purge_package - fi -} diff --git a/src/Installers/Debian/tools/test/test_assets/lkgtestman.1 b/src/Installers/Debian/tools/test/test_assets/lkgtestman.1 deleted file mode 100644 index 57915b0a615f..000000000000 --- a/src/Installers/Debian/tools/test/test_assets/lkgtestman.1 +++ /dev/null @@ -1,99 +0,0 @@ -.TH tool1 1 -.P -.SH NAME -.P -.B tool1 - A tool to Vestibulum lacinia arcu eget nulla. -.P -.SH SYNOPSIS -.P -.B tool1 noOptionsCommand -.RI " " -.I "argument list stuff" -.P -.B tool1 noArgumentListFullOptions -.RI [ "-t" | "--target" " " "TARGET" ] " " [ "--noshortparam" ] " " [ "-l" ] " " [ "-p" | "--noparam" ] " " [ "-n" " " "NOLONG" ] " " [ "--noshort" " " "NOSHORT" ] " " [ "-a" | "--another" " " "ANOTHER" ] " " -.I "" -.P -.B tool1 fullcommand1 -.RI [ "-t" | "--target" " " "TARGET" ] " " [ "--noshortparam" ] " " [ "-l" ] " " [ "-p" | "--noparam" ] " " [ "-n" " " "NOLONG" ] " " [ "--noshort" " " "NOSHORT" ] " " [ "-a" | "--another" " " "ANOTHER" ] " " -.I "argument list stuff" -.P -.SH DESCRIPTION -.P -.PP Tool1 is a really great Curabitur tortor. Pellentesque nibh. Aenean quam. In scelerisque sem at dolor. Maecenas mattis. Sed convallis tristique sem. Proin ut ligula vel nunc egestas porttitor. Morbi lectus risus, iaculis vel, suscipit quis, luctus non, massa. Fusce ac turpis quis ligula lacinia aliquet. Mauris ipsum. Nulla metus metus, ullamcorper vel, tincidunt sed, euismod in, nibh. -.P -.B tool1 noOptionsCommand -builds a native executable from specified source files -.P -.B tool1 noArgumentListFullOptions -builds a native executable from specified source files -.P -.B tool1 fullcommand1 -builds a native executable from specified source files -.P -.SH OPTIONS -.P -.TP -.B "-t" ", " "--target" " " "TARGET" -Specifies target binary output type. EXE or DLL -.P -.TP -.B "--noshortparam" -Specifies another aptent taciti sociosqu ad litora torquent per conubia nostra -.P -.TP -.B "-l" -Specifies noparam nolong congue elementum. Morbi in ipsum sit amet pede facilisis laoreet -.P -.TP -.B "-p" ", " "--noparam" -Specifies noparam metus vitae pharetra auctor, sem -.P -.TP -.B "-n" " " "NOLONG" -Specifies nolong Nunc feugiat mi a tellus consequat -.P -.TP -.B "--noshort" " " "NOSHORT" -Specifies noshortNam nec ante. Sed lacinia, urna non tincidunt -.P -.TP -.B "-a" ", " "--another" " " "ANOTHER" -Specifies another aptent taciti sociosqu ad litora torquent per conubia nostra -.P -.TP -.B "-t" ", " "--target" " " "TARGET" -Specifies target binary output type. EXE or DLL -.P -.TP -.B "--noshortparam" -Specifies another aptent taciti sociosqu ad litora torquent per conubia nostra -.P -.TP -.B "-l" -Specifies noparam nolong congue elementum. Morbi in ipsum sit amet pede facilisis laoreet -.P -.TP -.B "-p" ", " "--noparam" -Specifies noparam metus vitae pharetra auctor, sem -.P -.TP -.B "-n" " " "NOLONG" -Specifies nolong Nunc feugiat mi a tellus consequat -.P -.TP -.B "--noshort" " " "NOSHORT" -Specifies noshortNam nec ante. Sed lacinia, urna non tincidunt -.P -.TP -.B "-a" ", " "--another" " " "ANOTHER" -Specifies another aptent taciti sociosqu ad litora torquent per conubia nostra -.P -.SH AUTHOR -.P -.B "Test Author" " " -.RI ( "testing@testing.com" ) -.P -.SH COPYRIGHT -.P -.B "This is the copyright of tool1." diff --git a/src/Installers/Debian/tools/test/test_assets/test_package_layout/debian_config.json b/src/Installers/Debian/tools/test/test_assets/test_package_layout/debian_config.json deleted file mode 100644 index 2150baab15d7..000000000000 --- a/src/Installers/Debian/tools/test/test_assets/test_package_layout/debian_config.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "maintainer_name":"Microsoft", - "maintainer_email": "optimus@service.microsoft.com", - - "package_name": "packagetooltest", - - "short_description": "This is a test package", - "long_description": "This is a longer description of the test package", - "homepage": "http://testpackage.com", - - "release":{ - "package_version":"0.1", - "package_revision":"1", - "urgency" : "low", - "changelog_message" : "some stuff here" - }, - - "control": { - "priority":"standard", - "section":"devel", - "architecture":"any" - }, - - "copyright": "2015 Microsoft", - "license": { - "type": "some_license", - "full_text": "full license text here" - }, - - "debian_dependencies" : { - "curl": { - "package_version" : "0.5.3" - }, - "python3":{} - }, - - "symlinks": { - "path_relative_to_package_root/test_exe.sh" : "usr/bin/test_exe.sh" - } -} \ No newline at end of file diff --git a/src/Installers/Debian/tools/test/test_assets/test_package_layout/docs.json b/src/Installers/Debian/tools/test/test_assets/test_package_layout/docs.json deleted file mode 100644 index e35fdb3bfd78..000000000000 --- a/src/Installers/Debian/tools/test/test_assets/test_package_layout/docs.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "tools": { - "tool1": { - "copyright": "This is the copyright of tool1.", - "license" : "This is the license of tool1", - "author":"Test Author", - "author_email":"testing@testing.com", - "short_description":"A tool to Vestibulum lacinia arcu eget nulla.", - "long_description":"Tool1 is a really great Curabitur tortor. Pellentesque nibh. Aenean quam. In scelerisque sem at dolor. Maecenas mattis. Sed convallis tristique sem. Proin ut ligula vel nunc egestas porttitor. Morbi lectus risus, iaculis vel, suscipit quis, luctus non, massa. Fusce ac turpis quis ligula lacinia aliquet. Mauris ipsum. Nulla metus metus, ullamcorper vel, tincidunt sed, euismod in, nibh. ", - "commands": { - "fullcommand1":{ - "description":"builds a native executable from specified source files", - "options" : { - "target": { - "short": "-t", - "long":"--target", - "description":"Specifies target binary output type. EXE or DLL", - "parameter":"TARGET" - }, - "target2": { - "short": "-a", - "long":"--another", - "description":"Specifies another aptent taciti sociosqu ad litora torquent per conubia nostra", - "parameter":"ANOTHER" - }, - "noshort": { - "long":"--noshort", - "description":"Specifies noshortNam nec ante. Sed lacinia, urna non tincidunt", - "parameter":"NOSHORT" - }, - "nolong": { - "short": "-n", - "description":"Specifies nolong Nunc feugiat mi a tellus consequat ", - "parameter":"NOLONG" - }, - "noparam": { - "short": "-p", - "long":"--noparam", - "description":"Specifies noparam metus vitae pharetra auctor, sem" - }, - "noParamNoShort": { - "long":"--noshortparam", - "description":"Specifies another aptent taciti sociosqu ad litora torquent per conubia nostra" - }, - "noParamNoLong": { - "short": "-l", - "description":"Specifies noparam nolong congue elementum. Morbi in ipsum sit amet pede facilisis laoreet" - } - }, - "argumentlist" : { - "name":"argument list stuff", - "description":"ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae;" - } - - }, - "noOptionsCommand":{ - "description":"builds a native executable from specified source files", - "argumentlist" : { - "name":"argument list stuff", - "description":"ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae;" - } - - }, - "noArgumentListFullOptions":{ - "description":"builds a native executable from specified source files", - "options" : { - "target": { - "short": "-t", - "long":"--target", - "description":"Specifies target binary output type. EXE or DLL", - "parameter":"TARGET" - }, - "target2": { - "short": "-a", - "long":"--another", - "description":"Specifies another aptent taciti sociosqu ad litora torquent per conubia nostra", - "parameter":"ANOTHER" - }, - "noshort": { - "long":"--noshort", - "description":"Specifies noshortNam nec ante. Sed lacinia, urna non tincidunt", - "parameter":"NOSHORT" - }, - "nolong": { - "short": "-n", - "description":"Specifies nolong Nunc feugiat mi a tellus consequat ", - "parameter":"NOLONG" - }, - "noparam": { - "short": "-p", - "long":"--noparam", - "description":"Specifies noparam metus vitae pharetra auctor, sem" - }, - "noParamNoShort": { - "long":"--noshortparam", - "description":"Specifies another aptent taciti sociosqu ad litora torquent per conubia nostra" - }, - "noParamNoLong": { - "short": "-l", - "description":"Specifies noparam nolong congue elementum. Morbi in ipsum sit amet pede facilisis laoreet" - } - } - } - } - - } - } -} diff --git a/src/Installers/Debian/tools/test/test_assets/test_package_layout/docs/testdocs.1 b/src/Installers/Debian/tools/test/test_assets/test_package_layout/docs/testdocs.1 deleted file mode 100644 index 57915b0a615f..000000000000 --- a/src/Installers/Debian/tools/test/test_assets/test_package_layout/docs/testdocs.1 +++ /dev/null @@ -1,99 +0,0 @@ -.TH tool1 1 -.P -.SH NAME -.P -.B tool1 - A tool to Vestibulum lacinia arcu eget nulla. -.P -.SH SYNOPSIS -.P -.B tool1 noOptionsCommand -.RI " " -.I "argument list stuff" -.P -.B tool1 noArgumentListFullOptions -.RI [ "-t" | "--target" " " "TARGET" ] " " [ "--noshortparam" ] " " [ "-l" ] " " [ "-p" | "--noparam" ] " " [ "-n" " " "NOLONG" ] " " [ "--noshort" " " "NOSHORT" ] " " [ "-a" | "--another" " " "ANOTHER" ] " " -.I "" -.P -.B tool1 fullcommand1 -.RI [ "-t" | "--target" " " "TARGET" ] " " [ "--noshortparam" ] " " [ "-l" ] " " [ "-p" | "--noparam" ] " " [ "-n" " " "NOLONG" ] " " [ "--noshort" " " "NOSHORT" ] " " [ "-a" | "--another" " " "ANOTHER" ] " " -.I "argument list stuff" -.P -.SH DESCRIPTION -.P -.PP Tool1 is a really great Curabitur tortor. Pellentesque nibh. Aenean quam. In scelerisque sem at dolor. Maecenas mattis. Sed convallis tristique sem. Proin ut ligula vel nunc egestas porttitor. Morbi lectus risus, iaculis vel, suscipit quis, luctus non, massa. Fusce ac turpis quis ligula lacinia aliquet. Mauris ipsum. Nulla metus metus, ullamcorper vel, tincidunt sed, euismod in, nibh. -.P -.B tool1 noOptionsCommand -builds a native executable from specified source files -.P -.B tool1 noArgumentListFullOptions -builds a native executable from specified source files -.P -.B tool1 fullcommand1 -builds a native executable from specified source files -.P -.SH OPTIONS -.P -.TP -.B "-t" ", " "--target" " " "TARGET" -Specifies target binary output type. EXE or DLL -.P -.TP -.B "--noshortparam" -Specifies another aptent taciti sociosqu ad litora torquent per conubia nostra -.P -.TP -.B "-l" -Specifies noparam nolong congue elementum. Morbi in ipsum sit amet pede facilisis laoreet -.P -.TP -.B "-p" ", " "--noparam" -Specifies noparam metus vitae pharetra auctor, sem -.P -.TP -.B "-n" " " "NOLONG" -Specifies nolong Nunc feugiat mi a tellus consequat -.P -.TP -.B "--noshort" " " "NOSHORT" -Specifies noshortNam nec ante. Sed lacinia, urna non tincidunt -.P -.TP -.B "-a" ", " "--another" " " "ANOTHER" -Specifies another aptent taciti sociosqu ad litora torquent per conubia nostra -.P -.TP -.B "-t" ", " "--target" " " "TARGET" -Specifies target binary output type. EXE or DLL -.P -.TP -.B "--noshortparam" -Specifies another aptent taciti sociosqu ad litora torquent per conubia nostra -.P -.TP -.B "-l" -Specifies noparam nolong congue elementum. Morbi in ipsum sit amet pede facilisis laoreet -.P -.TP -.B "-p" ", " "--noparam" -Specifies noparam metus vitae pharetra auctor, sem -.P -.TP -.B "-n" " " "NOLONG" -Specifies nolong Nunc feugiat mi a tellus consequat -.P -.TP -.B "--noshort" " " "NOSHORT" -Specifies noshortNam nec ante. Sed lacinia, urna non tincidunt -.P -.TP -.B "-a" ", " "--another" " " "ANOTHER" -Specifies another aptent taciti sociosqu ad litora torquent per conubia nostra -.P -.SH AUTHOR -.P -.B "Test Author" " " -.RI ( "testing@testing.com" ) -.P -.SH COPYRIGHT -.P -.B "This is the copyright of tool1." diff --git a/src/Installers/Debian/tools/test/test_assets/test_package_layout/package_root/path_relative_to_package_root/test_exe.sh b/src/Installers/Debian/tools/test/test_assets/test_package_layout/package_root/path_relative_to_package_root/test_exe.sh deleted file mode 100755 index 370bc40f3a95..000000000000 --- a/src/Installers/Debian/tools/test/test_assets/test_package_layout/package_root/path_relative_to_package_root/test_exe.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash -# -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# - -# Resolve symlinks until we have the parent dir of the actual file -SOURCE="${BASH_SOURCE[0]}" -while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink - DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" - SOURCE="$(readlink "$SOURCE")" - [[ "$SOURCE" != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located -done -DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" - -# This is how tools should be called -exec bash $DIR/../test_called.sh diff --git a/src/Installers/Debian/tools/test/test_assets/test_package_layout/package_root/test_called.sh b/src/Installers/Debian/tools/test/test_assets/test_package_layout/package_root/test_called.sh deleted file mode 100755 index e14e427cf67f..000000000000 --- a/src/Installers/Debian/tools/test/test_assets/test_package_layout/package_root/test_called.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash -# -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# - -echo "script called" diff --git a/src/Installers/Debian/tools/test/test_assets/test_package_layout/samples/testsample.cs b/src/Installers/Debian/tools/test/test_assets/test_package_layout/samples/testsample.cs deleted file mode 100644 index 086319c67a58..000000000000 --- a/src/Installers/Debian/tools/test/test_assets/test_package_layout/samples/testsample.cs +++ /dev/null @@ -1,12 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - -using System; - -public class Program { - - public static void Main(){ - System.Console.WriteLine("Hello World"); - } - -} \ No newline at end of file diff --git a/src/Installers/Debian/tools/test/test_assets/testdocs.json b/src/Installers/Debian/tools/test/test_assets/testdocs.json deleted file mode 100644 index e35fdb3bfd78..000000000000 --- a/src/Installers/Debian/tools/test/test_assets/testdocs.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "tools": { - "tool1": { - "copyright": "This is the copyright of tool1.", - "license" : "This is the license of tool1", - "author":"Test Author", - "author_email":"testing@testing.com", - "short_description":"A tool to Vestibulum lacinia arcu eget nulla.", - "long_description":"Tool1 is a really great Curabitur tortor. Pellentesque nibh. Aenean quam. In scelerisque sem at dolor. Maecenas mattis. Sed convallis tristique sem. Proin ut ligula vel nunc egestas porttitor. Morbi lectus risus, iaculis vel, suscipit quis, luctus non, massa. Fusce ac turpis quis ligula lacinia aliquet. Mauris ipsum. Nulla metus metus, ullamcorper vel, tincidunt sed, euismod in, nibh. ", - "commands": { - "fullcommand1":{ - "description":"builds a native executable from specified source files", - "options" : { - "target": { - "short": "-t", - "long":"--target", - "description":"Specifies target binary output type. EXE or DLL", - "parameter":"TARGET" - }, - "target2": { - "short": "-a", - "long":"--another", - "description":"Specifies another aptent taciti sociosqu ad litora torquent per conubia nostra", - "parameter":"ANOTHER" - }, - "noshort": { - "long":"--noshort", - "description":"Specifies noshortNam nec ante. Sed lacinia, urna non tincidunt", - "parameter":"NOSHORT" - }, - "nolong": { - "short": "-n", - "description":"Specifies nolong Nunc feugiat mi a tellus consequat ", - "parameter":"NOLONG" - }, - "noparam": { - "short": "-p", - "long":"--noparam", - "description":"Specifies noparam metus vitae pharetra auctor, sem" - }, - "noParamNoShort": { - "long":"--noshortparam", - "description":"Specifies another aptent taciti sociosqu ad litora torquent per conubia nostra" - }, - "noParamNoLong": { - "short": "-l", - "description":"Specifies noparam nolong congue elementum. Morbi in ipsum sit amet pede facilisis laoreet" - } - }, - "argumentlist" : { - "name":"argument list stuff", - "description":"ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae;" - } - - }, - "noOptionsCommand":{ - "description":"builds a native executable from specified source files", - "argumentlist" : { - "name":"argument list stuff", - "description":"ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae;" - } - - }, - "noArgumentListFullOptions":{ - "description":"builds a native executable from specified source files", - "options" : { - "target": { - "short": "-t", - "long":"--target", - "description":"Specifies target binary output type. EXE or DLL", - "parameter":"TARGET" - }, - "target2": { - "short": "-a", - "long":"--another", - "description":"Specifies another aptent taciti sociosqu ad litora torquent per conubia nostra", - "parameter":"ANOTHER" - }, - "noshort": { - "long":"--noshort", - "description":"Specifies noshortNam nec ante. Sed lacinia, urna non tincidunt", - "parameter":"NOSHORT" - }, - "nolong": { - "short": "-n", - "description":"Specifies nolong Nunc feugiat mi a tellus consequat ", - "parameter":"NOLONG" - }, - "noparam": { - "short": "-p", - "long":"--noparam", - "description":"Specifies noparam metus vitae pharetra auctor, sem" - }, - "noParamNoShort": { - "long":"--noshortparam", - "description":"Specifies another aptent taciti sociosqu ad litora torquent per conubia nostra" - }, - "noParamNoLong": { - "short": "-l", - "description":"Specifies noparam nolong congue elementum. Morbi in ipsum sit amet pede facilisis laoreet" - } - } - } - } - - } - } -} diff --git a/src/Installers/Debian/tools/test/unit_tests/test_debian_build_lib.bats b/src/Installers/Debian/tools/test/unit_tests/test_debian_build_lib.bats deleted file mode 100755 index 193868f835f7..000000000000 --- a/src/Installers/Debian/tools/test/unit_tests/test_debian_build_lib.bats +++ /dev/null @@ -1,279 +0,0 @@ -#!/usr/bin/env bats -# -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# - -# Tests for debian_build_lib.sh - -setup(){ - DIR="$BATS_TEST_DIRNAME" - PACKAGIFY_DIR="$(readlink -f $DIR/../../)" - - PACKAGE_DIR="$BATS_TMPDIR/test-package" - PACKAGE_SOURCE_DIR="$BATS_TMPDIR/test-source-package" - INSTALL_ROOT="test-install-root" - - # # Create Mock Package Directory - mkdir -p $PACKAGE_SOURCE_DIR/debian - mkdir $PACKAGE_DIR - - source $PACKAGIFY_DIR/scripts/debian_build_lib.sh - -} - -teardown(){ - # Remove Mock Package Directory - rm -r $PACKAGE_DIR - rm -r $PACKAGE_SOURCE_DIR -} - -@test "add_system_file_placement populates placement array" { - - add_system_file_placement "testfile0" "testdir0" - add_system_file_placement "testfile1" "testdir1" - - [ $placement_index -eq "2" ] - [ "${install_placement[0]}" = "testfile0 testdir0" ] - [ "${install_placement[1]}" = "testfile1 testdir1" ] -} - -@test "add_system_dir_placement adds files in dir to placement array" { - test_package_rel_dir="test-dir" - abs_test_path="/abs/test/path" - - mkdir $PACKAGE_SOURCE_DIR/$test_package_rel_dir - echo "file0 contents" > $PACKAGE_SOURCE_DIR/$test_package_rel_dir/file0 - echo "file1 contents" > $PACKAGE_SOURCE_DIR/$test_package_rel_dir/file1 - echo "file2 contents" > $PACKAGE_SOURCE_DIR/$test_package_rel_dir/file2 - - add_system_dir_placement $test_package_rel_dir $abs_test_path - - rm -r $PACKAGE_SOURCE_DIR/$test_package_rel_dir - - [ "$placement_index" -eq 3 ] - [ "${install_placement[0]}" = "$test_package_rel_dir/file0 $abs_test_path" ] - [ "${install_placement[1]}" = "$test_package_rel_dir/file1 $abs_test_path" ] - [ "${install_placement[2]}" = "$test_package_rel_dir/file2 $abs_test_path" ] -} - -@test "add_system_dir_placement adds all files in subdir to placement array" { - test_package_rel_dir="test-dir" - test_package_rel_subdir="test-subdir" - abs_test_path="/abs/test/path" - - mkdir -p $PACKAGE_SOURCE_DIR/$test_package_rel_dir/$test_package_rel_subdir - echo "file0 contents" > $PACKAGE_SOURCE_DIR/$test_package_rel_dir/$test_package_rel_subdir/file0 - echo "file1 contents" > $PACKAGE_SOURCE_DIR/$test_package_rel_dir/$test_package_rel_subdir/file1 - echo "file2 contents" > $PACKAGE_SOURCE_DIR/$test_package_rel_dir/$test_package_rel_subdir/file2 - - add_system_dir_placement $test_package_rel_dir $abs_test_path - - rm -r $PACKAGE_SOURCE_DIR/$test_package_rel_dir - - [ "$placement_index" -eq "3" ] - [ "${install_placement[0]}" = "$test_package_rel_dir/$test_package_rel_subdir/file0 $abs_test_path/$test_package_rel_subdir" ] - [ "${install_placement[1]}" = "$test_package_rel_dir/$test_package_rel_subdir/file1 $abs_test_path/$test_package_rel_subdir" ] - [ "${install_placement[2]}" = "$test_package_rel_dir/$test_package_rel_subdir/file2 $abs_test_path/$test_package_rel_subdir" ] -} - -@test "add_system_dir_placement adds all files in subdir and dir to placement array" { - test_package_rel_dir="test-dir" - test_package_rel_subdir="test-subdir" - abs_test_path="/abs/test/path" - - mkdir -p $PACKAGE_SOURCE_DIR/$test_package_rel_dir/$test_package_rel_subdir - echo "file0 contents" > $PACKAGE_SOURCE_DIR/$test_package_rel_dir/file0 - echo "file1 contents" > $PACKAGE_SOURCE_DIR/$test_package_rel_dir/file1 - echo "file2 contents" > $PACKAGE_SOURCE_DIR/$test_package_rel_dir/file2 - echo "file3 contents" > $PACKAGE_SOURCE_DIR/$test_package_rel_dir/$test_package_rel_subdir/file3 - echo "file4 contents" > $PACKAGE_SOURCE_DIR/$test_package_rel_dir/$test_package_rel_subdir/file4 - echo "file5 contents" > $PACKAGE_SOURCE_DIR/$test_package_rel_dir/$test_package_rel_subdir/file5 - - add_system_dir_placement $test_package_rel_dir $abs_test_path - - rm -r $PACKAGE_SOURCE_DIR/$test_package_rel_dir - - [ "$placement_index" -eq "6" ] - [ "${install_placement[0]}" = "$test_package_rel_dir/file0 $abs_test_path" ] - [ "${install_placement[1]}" = "$test_package_rel_dir/file1 $abs_test_path" ] - [ "${install_placement[2]}" = "$test_package_rel_dir/file2 $abs_test_path" ] - [ "${install_placement[3]}" = "$test_package_rel_dir/$test_package_rel_subdir/file3 $abs_test_path/$test_package_rel_subdir" ] - [ "${install_placement[4]}" = "$test_package_rel_dir/$test_package_rel_subdir/file4 $abs_test_path/$test_package_rel_subdir" ] - [ "${install_placement[5]}" = "$test_package_rel_dir/$test_package_rel_subdir/file5 $abs_test_path/$test_package_rel_subdir" ] -} - -@test "write_debian_install_file writes to debian/install" { - add_system_file_placement "somefile" "/some/abs/path" - write_debian_install_file - - [ -f "$PACKAGE_SOURCE_DIR/debian/install" ] - [ "$(cat $PACKAGE_SOURCE_DIR/debian/install)" = "somefile /some/abs/path" ] -} - -@test "add_file_to_install adds file to package_dest_dir" { - local_test_dir="$BATS_TMPDIR/local-dir" - local_subdir="the/path/should/not/matter" - package_test_dir="package-dir" - - mkdir $PACKAGE_SOURCE_DIR/$package_test_dir - mkdir -p $local_test_dir/$local_subdir - echo "file0 contents" > $local_test_dir/$local_subdir/file0 - echo "file1 contents" > $local_test_dir/$local_subdir/file1 - echo "file2 contents" > $local_test_dir/$local_subdir/file2 - - add_file_to_install "$local_test_dir/$local_subdir/file0" "$package_test_dir" - add_file_to_install "$local_test_dir/$local_subdir/file1" "$package_test_dir" - add_file_to_install "$local_test_dir/$local_subdir/file2" "$package_test_dir" - - rm -r $local_test_dir - - [ -f "$PACKAGE_SOURCE_DIR/$package_test_dir/file0" ] - [ -f "$PACKAGE_SOURCE_DIR/$package_test_dir/file1" ] - [ -f "$PACKAGE_SOURCE_DIR/$package_test_dir/file2" ] -} - -@test "add_file_to_install added files written to install file after write_debian_install_file" { - local_test_dir="$BATS_TMPDIR/local-dir" - local_subdir="the/path/should/not/matter" - package_test_dir="package-dir" - - mkdir $PACKAGE_SOURCE_DIR/$package_test_dir - mkdir -p $local_test_dir/$local_subdir - echo "file0 contents" > $local_test_dir/$local_subdir/file0 - - add_file_to_install "$local_test_dir/$local_subdir/file0" "$package_test_dir" - - rm -r $local_test_dir - - [ ! -e $PACKAGE_SOURCE_DIR/debian/install ] - write_debian_install_file - [ -f $PACKAGE_SOURCE_DIR/debian/install ] - [ "$(cat $PACKAGE_SOURCE_DIR/debian/install)" = "$package_test_dir/file0 $INSTALL_ROOT/$package_test_dir" ] -} - -@test "add_dir_to_install adds files in dir to package_dest_dir" { - local_test_dir="$BATS_TMPDIR/local-dir" - package_test_dir="package-dir" - - mkdir $PACKAGE_SOURCE_DIR/$package_test_dir - mkdir $local_test_dir - echo "file0 contents" > $local_test_dir/file0 - echo "file1 contents" > $local_test_dir/file1 - echo "file2 contents" > $local_test_dir/file2 - - add_dir_to_install "$local_test_dir" "$package_test_dir" - - rm -r $local_test_dir - - [ -f "$PACKAGE_SOURCE_DIR/$package_test_dir/file0" ] - [ -f "$PACKAGE_SOURCE_DIR/$package_test_dir/file1" ] - [ -f "$PACKAGE_SOURCE_DIR/$package_test_dir/file2" ] -} - -@test "add_dir_to_install adds files in subdirectory tree to package_dest_dir" { - local_test_dir="$BATS_TMPDIR/local-dir" - local_test_subdir="local-subdir" - - package_test_dir="package-dir" - - mkdir $PACKAGE_SOURCE_DIR/$package_test_dir - mkdir -p $local_test_dir/$local_test_subdir - echo "file0 contents" > $local_test_dir/$local_test_subdir/file0 - echo "file1 contents" > $local_test_dir/$local_test_subdir/file1 - echo "file2 contents" > $local_test_dir/$local_test_subdir/file2 - - add_dir_to_install "$local_test_dir" "$package_test_dir" - - rm -r $local_test_dir - - [ -f "$PACKAGE_SOURCE_DIR/$package_test_dir/$local_test_subdir/file0" ] - [ -f "$PACKAGE_SOURCE_DIR/$package_test_dir/$local_test_subdir/file1" ] - [ -f "$PACKAGE_SOURCE_DIR/$package_test_dir/$local_test_subdir/file2" ] -} - -@test "add_dir_to_install adds files in directory and subdirectory tree to package_dest_dir" { - local_test_dir="$BATS_TMPDIR/local-dir" - local_test_subdir="local-subdir" - - package_test_dir="package-dir" - - mkdir $PACKAGE_SOURCE_DIR/$package_test_dir - mkdir -p $local_test_dir/$local_test_subdir - - echo "file0 contents" > $local_test_dir/file0 - echo "file1 contents" > $local_test_dir/file1 - echo "file2 contents" > $local_test_dir/file2 - echo "file3 contents" > $local_test_dir/$local_test_subdir/file3 - echo "file4 contents" > $local_test_dir/$local_test_subdir/file4 - echo "file5 contents" > $local_test_dir/$local_test_subdir/file5 - - add_dir_to_install "$local_test_dir" "$package_test_dir" - - rm -r $local_test_dir - - [ -f "$PACKAGE_SOURCE_DIR/$package_test_dir/file0" ] - [ -f "$PACKAGE_SOURCE_DIR/$package_test_dir/file1" ] - [ -f "$PACKAGE_SOURCE_DIR/$package_test_dir/file2" ] - [ -f "$PACKAGE_SOURCE_DIR/$package_test_dir/$local_test_subdir/file3" ] - [ -f "$PACKAGE_SOURCE_DIR/$package_test_dir/$local_test_subdir/file4" ] - [ -f "$PACKAGE_SOURCE_DIR/$package_test_dir/$local_test_subdir/file5" ] -} - -@test "add_dir_to_install added files written to install file after write_debian_install_file" { - local_test_dir="$BATS_TMPDIR/local-dir" - package_test_dir="package-dir" - - mkdir $PACKAGE_SOURCE_DIR/$package_test_dir - mkdir -p $local_test_dir - - echo "file0 contents" > $local_test_dir/file0 - - add_dir_to_install "$local_test_dir" "$package_test_dir" - - rm -r $local_test_dir - - [ ! -e $PACKAGE_SOURCE_DIR/debian/install ] - write_debian_install_file - [ -f $PACKAGE_SOURCE_DIR/debian/install ] - [ "$(cat $PACKAGE_SOURCE_DIR/debian/install)" = "$package_test_dir/file0 $INSTALL_ROOT/$package_test_dir" ] -} - -@test "add_dir_to_install with empty dest dir outputs to PACKAGE_SOURCE_DIR" { - local_test_dir="$BATS_TMPDIR/local-dir" - mkdir -p $local_test_dir - - echo "file0 contents" > $local_test_dir/file0 - - add_dir_to_install "$local_test_dir" "" - - rm -r $local_test_dir - - [ -f "$PACKAGE_SOURCE_DIR/file0" ] -} - - -@test "add_dir_to_install with empty dest dir adds files in directory and subdirectory tree to $PACKAGE_SOURCE_DIR" { - local_test_dir="$BATS_TMPDIR/local-dir" - local_test_subdir="local-subdir" - - mkdir -p $local_test_dir/$local_test_subdir - - echo "file0 contents" > $local_test_dir/file0 - echo "file1 contents" > $local_test_dir/file1 - echo "file2 contents" > $local_test_dir/file2 - echo "file3 contents" > $local_test_dir/$local_test_subdir/file3 - echo "file4 contents" > $local_test_dir/$local_test_subdir/file4 - echo "file5 contents" > $local_test_dir/$local_test_subdir/file5 - - add_dir_to_install "$local_test_dir" "" - - rm -r $local_test_dir - - [ -f "$PACKAGE_SOURCE_DIR/file0" ] - [ -f "$PACKAGE_SOURCE_DIR/file1" ] - [ -f "$PACKAGE_SOURCE_DIR/file2" ] - [ -f "$PACKAGE_SOURCE_DIR/$local_test_subdir/file3" ] - [ -f "$PACKAGE_SOURCE_DIR/$local_test_subdir/file4" ] - [ -f "$PACKAGE_SOURCE_DIR/$local_test_subdir/file5" ] -} diff --git a/src/Installers/Debian/tools/test/unit_tests/test_scripts.bats b/src/Installers/Debian/tools/test/unit_tests/test_scripts.bats deleted file mode 100755 index 86f95b9ba52b..000000000000 --- a/src/Installers/Debian/tools/test/unit_tests/test_scripts.bats +++ /dev/null @@ -1,28 +0,0 @@ -#!/usr/bin/env bats -# -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# - -# Tests for debian_build_lib.sh - -setup(){ - DIR="$BATS_TEST_DIRNAME" - PACKAGIFY_DIR="$(readlink -f $DIR/../../)" -} - -@test "manpage generation is identical to lkg file" { - # Output is file "tool1.1" - # LKG file is "lkgtestman.1" - python3 $PACKAGIFY_DIR/scripts/manpage_generator.py $PACKAGIFY_DIR/test/test_assets/testdocs.json $PACKAGIFY_DIR/test/test_assets - - # Test Output existence - [ -f $PACKAGIFY_DIR/test/test_assets/tool1.1 ] - - # Test Output matches LKG - # If this is failing double check line ending style - [ -z "$(diff "$PACKAGIFY_DIR/test/test_assets/tool1.1" "$PACKAGIFY_DIR/test/test_assets/lkgtestman.1")" ] - - # Cleanup - rm $PACKAGIFY_DIR/test/test_assets/tool1.1 -} \ No newline at end of file diff --git a/src/Installers/Rpm/Directory.Build.props b/src/Installers/Rpm/Directory.Build.props deleted file mode 100644 index 252ab60311c5..000000000000 --- a/src/Installers/Rpm/Directory.Build.props +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - $(IntermediateOutputPath)$(TargetRuntimeIdentifier)\ - $(InstallersOutputPath) - - -cm.1 - -cm.2 - - - true - true - - - x64 - aarch64 - - - false - - diff --git a/src/Installers/Rpm/Directory.Build.targets b/src/Installers/Rpm/Directory.Build.targets deleted file mode 100644 index 30d705abb1dc..000000000000 --- a/src/Installers/Rpm/Directory.Build.targets +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - - $(RpmPackageInstallRoot)/ - - - - - - - - - - - - - - - - - - - - $(RpmBuildDependsOn); - PrepareForBuild; - ResolveProjectReferences; - GetTargetPath; - - - - - - - - - $(InstallersOutputPath)$(CblMarinerBaseName)$(CblMariner1VersionSuffix)$(CblMarinerExtension) - $(InstallersOutputPath)$(CblMarinerBaseName)$(CblMariner2VersionSuffix)$(CblMarinerExtension) - - - - - DATE=$([System.DateTime]::UtcNow.ToString(ddd MMM dd yyyy)) - $(ChangeLogProps);MAINTAINER_NAME=$(Authors) - $(ChangeLogProps);MAINTAINER_EMAIL=$(MaintainerEmail) - $(ChangeLogProps);PACKAGE_VERSION=$(PackageVersion) - $(ChangeLogProps);PACKAGE_REVISION=$(PackageRevision) - - - x86_64 - aarch64 - - $(IntermediateOutputPath)changelog - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/Installers/Rpm/Rpm.Runtime.Common.targets b/src/Installers/Rpm/Rpm.Runtime.Common.targets deleted file mode 100644 index e679ff625e91..000000000000 --- a/src/Installers/Rpm/Rpm.Runtime.Common.targets +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - $(RuntimeInstallerBaseName)-$(AspNetCoreMajorMinorVersion) - $(AspNetCoreMajorMinorVersion).$(AspNetCorePatchVersion) - - - 1 - 0.1.$(VersionSuffix.Replace('-', '_')) - - $(SharedFxProductName) - $(SharedFxDescription) - - $(SharedFrameworkLayoutRoot) - - $(MicrosoftNETCoreAppRuntimeVersion.Split('.')[0]).$(MicrosoftNETCoreAppRuntimeVersion.Split('.')[1]) - - - - - - - - - diff --git a/src/Installers/Rpm/Runtime/Rpm.Runtime.rpmproj b/src/Installers/Rpm/Runtime/Rpm.Runtime.rpmproj deleted file mode 100644 index 5e0427aea7f8..000000000000 --- a/src/Installers/Rpm/Runtime/Rpm.Runtime.rpmproj +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - /usr/share/dotnet/ - - - - - - - $(RuntimeInstallerBaseName)-$(SharedFxVersion)-$(RpmArch).rpm - $(InstallersOutputPath)$(TargetFileName) - $(RuntimeInstallerBaseName)-$(SharedFxVersion) - -$(RpmArch).rpm - - diff --git a/src/Installers/Rpm/TargetingPack/Rpm.TargetingPack.rpmproj b/src/Installers/Rpm/TargetingPack/Rpm.TargetingPack.rpmproj deleted file mode 100644 index a29db936bd79..000000000000 --- a/src/Installers/Rpm/TargetingPack/Rpm.TargetingPack.rpmproj +++ /dev/null @@ -1,43 +0,0 @@ - - - - - /usr/share/dotnet/ - - $(TargetingPackLayoutRoot) - - - - $(TargetingPackInstallerBaseName)-$(AspNetCoreMajorMinorVersion) - - ASP.NET Core Targeting Pack - Provides a default set of APIs for building an ASP.NET Core $(AspNetCoreMajorMinorVersion) application. Contains reference assemblies, documentation, and other design-time assets. - - $(MicrosoftNETCoreAppRefVersion.Split('.')[0]).$(MicrosoftNETCoreAppRefVersion.Split('.')[1]) - - - - - - - - - - - - - $(TargetingPackInstallerBaseName)-$(TargetingPackVersion)-$(RpmArch).rpm - $(InstallersOutputPath)$(TargetFileName) - $(TargetingPackInstallerBaseName)-$(TargetingPackVersion) - -$(RpmArch).rpm - - $(TargetingPackVersionPrefix) - - - 1 - 0.1.$(VersionSuffix.Replace('-', '_')) - - diff --git a/src/Installers/Rpm/changelog.in b/src/Installers/Rpm/changelog.in deleted file mode 100644 index 919601192419..000000000000 --- a/src/Installers/Rpm/changelog.in +++ /dev/null @@ -1,2 +0,0 @@ -* ${DATE} ${MAINTAINER_NAME} <${MAINTAINER_EMAIL}> - ${PACKAGE_VERSION}-${PACKAGE_REVISION} -- \ No newline at end of file diff --git a/src/ProjectTemplates/ProjectTemplates.slnf b/src/ProjectTemplates/ProjectTemplates.slnf index a3e1d4b51627..06bf071ab30c 100644 --- a/src/ProjectTemplates/ProjectTemplates.slnf +++ b/src/ProjectTemplates/ProjectTemplates.slnf @@ -12,7 +12,7 @@ "src\\DataProtection\\Extensions\\src\\Microsoft.AspNetCore.DataProtection.Extensions.csproj", "src\\DefaultBuilder\\src\\Microsoft.AspNetCore.csproj", "src\\Extensions\\Features\\src\\Microsoft.Extensions.Features.csproj", - "src\\Framework\\App.Runtime\\src\\Microsoft.AspNetCore.App.Runtime.csproj", + "src\\Framework\\App.Runtime\\src\\Microsoft.AspNetCore.App.Runtime.sfxproj", "src\\Hosting\\Abstractions\\src\\Microsoft.AspNetCore.Hosting.Abstractions.csproj", "src\\Hosting\\Hosting\\src\\Microsoft.AspNetCore.Hosting.csproj", "src\\Hosting\\Server.Abstractions\\src\\Microsoft.AspNetCore.Hosting.Server.Abstractions.csproj", @@ -95,4 +95,4 @@ "src\\SignalR\\server\\SignalR\\src\\Microsoft.AspNetCore.SignalR.csproj" ] } -} \ No newline at end of file +} diff --git a/src/ProjectTemplates/test/Templates.Blazor.Tests/Templates.Blazor.Tests.csproj b/src/ProjectTemplates/test/Templates.Blazor.Tests/Templates.Blazor.Tests.csproj index 933f42dd9423..cfd8616293b2 100644 --- a/src/ProjectTemplates/test/Templates.Blazor.Tests/Templates.Blazor.Tests.csproj +++ b/src/ProjectTemplates/test/Templates.Blazor.Tests/Templates.Blazor.Tests.csproj @@ -54,7 +54,7 @@ - diff --git a/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Auth.Tests/Templates.Blazor.WebAssembly.Auth.Tests.csproj b/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Auth.Tests/Templates.Blazor.WebAssembly.Auth.Tests.csproj index 3d0831a1001a..74bfd58798ba 100644 --- a/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Auth.Tests/Templates.Blazor.WebAssembly.Auth.Tests.csproj +++ b/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Auth.Tests/Templates.Blazor.WebAssembly.Auth.Tests.csproj @@ -44,7 +44,7 @@ - diff --git a/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Tests/Templates.Blazor.WebAssembly.Tests.csproj b/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Tests/Templates.Blazor.WebAssembly.Tests.csproj index b42866c3a78f..59acba6a0d9e 100644 --- a/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Tests/Templates.Blazor.WebAssembly.Tests.csproj +++ b/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Tests/Templates.Blazor.WebAssembly.Tests.csproj @@ -43,7 +43,7 @@ - diff --git a/src/ProjectTemplates/test/Templates.Mvc.Tests/Templates.Mvc.Tests.csproj b/src/ProjectTemplates/test/Templates.Mvc.Tests/Templates.Mvc.Tests.csproj index 8d2e818fea7b..3640c3ce1f52 100644 --- a/src/ProjectTemplates/test/Templates.Mvc.Tests/Templates.Mvc.Tests.csproj +++ b/src/ProjectTemplates/test/Templates.Mvc.Tests/Templates.Mvc.Tests.csproj @@ -53,7 +53,7 @@ - diff --git a/src/ProjectTemplates/test/Templates.Tests/Templates.Tests.csproj b/src/ProjectTemplates/test/Templates.Tests/Templates.Tests.csproj index a22f7fdea519..59c79fcb5ace 100644 --- a/src/ProjectTemplates/test/Templates.Tests/Templates.Tests.csproj +++ b/src/ProjectTemplates/test/Templates.Tests/Templates.Tests.csproj @@ -47,7 +47,7 @@ - diff --git a/src/SiteExtensions/LoggingBranch/LB.csproj b/src/SiteExtensions/LoggingBranch/LB.csproj index 7832725de868..68b1439ef2b6 100644 --- a/src/SiteExtensions/LoggingBranch/LB.csproj +++ b/src/SiteExtensions/LoggingBranch/LB.csproj @@ -24,7 +24,7 @@ - diff --git a/src/SiteExtensions/Runtime/Microsoft.AspNetCore.Runtime.SiteExtension.pkgproj b/src/SiteExtensions/Runtime/Microsoft.AspNetCore.Runtime.SiteExtension.pkgproj index bd67ff01be5c..e204031389b5 100644 --- a/src/SiteExtensions/Runtime/Microsoft.AspNetCore.Runtime.SiteExtension.pkgproj +++ b/src/SiteExtensions/Runtime/Microsoft.AspNetCore.Runtime.SiteExtension.pkgproj @@ -34,7 +34,7 @@ SkipGetTargetFrameworkProperties="true" /> - From ec21b1556948c1a19d8184334e5c4061b31eb1c5 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Thu, 24 Oct 2024 18:37:54 +0000 Subject: [PATCH 15/50] Remove the NoTargets SDK, ended up using the Traversal SDK instead. --- global.json | 1 - 1 file changed, 1 deletion(-) diff --git a/global.json b/global.json index b343a9384a65..cffbb09e4a08 100644 --- a/global.json +++ b/global.json @@ -30,7 +30,6 @@ "Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.24515.3", "Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.24515.3", "Microsoft.DotNet.SharedFramework.Sdk" : "10.0.0-beta.24515.3", - "Microsoft.Build.NoTargets": "3.7.0", "Microsoft.Build.Traversal": "3.4.0" } } From 214ede2a3872ee4760ad53b374f407f98ab2d077 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Thu, 24 Oct 2024 20:20:13 +0000 Subject: [PATCH 16/50] Fix path to runtime pack for manifest --- src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj b/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj index d1202c9f780e..ce1b85273842 100644 --- a/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj +++ b/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj @@ -7,7 +7,7 @@ Microsoft ASP.NET Core $(DefaultNetCoreTargetFramework) aspnetcore;targeting-pack - $(RepoRoot)src\Framework\App.Runtime\src_sfx\Microsoft.AspNetCore.App.Runtime.Sfx.sfxproj + $(RepoRoot)src\Framework\App.Runtime\src\Microsoft.AspNetCore.App.Runtime.sfxproj $(TargetRuntimeIdentifier) $(TargetingPackInstallerBaseName) $(TargetingPackInstallerBaseName) From d46c78a96410ca838efe91bc7bb630338e079c83 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Thu, 24 Oct 2024 21:41:50 +0000 Subject: [PATCH 17/50] Don't reference the installers package on Windows. We don't want to build MSIs with this tooling (yet) --- src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj | 2 +- .../App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj b/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj index ce1b85273842..3eed7ad25ca6 100644 --- a/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj +++ b/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj @@ -36,7 +36,7 @@ - + diff --git a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj index d54627a14e06..ff91eac9dfed 100644 --- a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj +++ b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj @@ -50,7 +50,7 @@ - + From 940cba65586546d3d423ab1a2772b02c5e72e7ea Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Thu, 24 Oct 2024 22:40:34 +0000 Subject: [PATCH 18/50] Fix reference from aspnetcore-runtime and sequence the projects into the build better --- eng/Build.props | 3 +++ src/Framework/App.Runtime/src/aspnetcore-runtime.proj | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/eng/Build.props b/eng/Build.props index 1497bca85e5a..bd07997ce0fb 100644 --- a/eng/Build.props +++ b/eng/Build.props @@ -143,6 +143,9 @@ - + - + From 332b97befab33eb510cfc5091421791cad38759c Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Thu, 24 Oct 2024 23:45:50 +0000 Subject: [PATCH 21/50] Set property with file name --- .../src/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj index a824668e6d07..f7bc1566d389 100644 --- a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj +++ b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj @@ -29,6 +29,8 @@ .pdb + + PartialCompositeAssemblyListPath.txt From 3e7e74b77483189130bac0ff4b958c7610427623 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Fri, 25 Oct 2024 17:46:19 +0000 Subject: [PATCH 22/50] Disable APICompat for the archive projects. --- src/Framework/App.Runtime/src/aspnetcore-runtime-composite.proj | 2 ++ src/Framework/App.Runtime/src/aspnetcore-runtime.proj | 2 ++ 2 files changed, 4 insertions(+) diff --git a/src/Framework/App.Runtime/src/aspnetcore-runtime-composite.proj b/src/Framework/App.Runtime/src/aspnetcore-runtime-composite.proj index 0be5ba33f001..08dc9112ef9f 100644 --- a/src/Framework/App.Runtime/src/aspnetcore-runtime-composite.proj +++ b/src/Framework/App.Runtime/src/aspnetcore-runtime-composite.proj @@ -2,6 +2,8 @@ $(DefaultNetCoreTargetFramework) $(TargetRuntimeIdentifier) + + false true diff --git a/src/Framework/App.Runtime/src/aspnetcore-runtime.proj b/src/Framework/App.Runtime/src/aspnetcore-runtime.proj index 898883432ec9..0c0b604dc567 100644 --- a/src/Framework/App.Runtime/src/aspnetcore-runtime.proj +++ b/src/Framework/App.Runtime/src/aspnetcore-runtime.proj @@ -2,6 +2,8 @@ $(DefaultNetCoreTargetFramework) $(TargetRuntimeIdentifier) + + false true From ffc4ecfb3ccd1c0d4b69077c3bd5f80de3e32dd8 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Fri, 25 Oct 2024 21:41:26 +0000 Subject: [PATCH 23/50] Fix expected output directory for deb/rpm/targz/zip to be the shipping packages output. --- eng/DotNetBuild.props | 3 --- eng/Publishing.props | 11 ++++++----- eng/Signing.props | 2 +- .../Windows/SharedFramework/SharedFramework.wixproj | 6 +++--- .../Windows/TargetingPack/TargetingPack.wixproj | 2 +- 5 files changed, 11 insertions(+), 13 deletions(-) diff --git a/eng/DotNetBuild.props b/eng/DotNetBuild.props index 3789017afb53..f1b1e9c5e0e0 100644 --- a/eng/DotNetBuild.props +++ b/eng/DotNetBuild.props @@ -78,12 +78,9 @@ - - - diff --git a/eng/Publishing.props b/eng/Publishing.props index 002b0d7fb8ee..2115676b265d 100644 --- a/eng/Publishing.props +++ b/eng/Publishing.props @@ -12,7 +12,7 @@ '$(PostBuildSign)' != 'true' and '$(DotNetBuildRepo)' != 'true'">false - true false @@ -31,13 +31,14 @@ <_InstallersToPublish Include="$(ArtifactsDir)installers\**\*.version" UploadPathSegment="Runtime" Condition="'$(PublishInstallerBaseVersion)' == 'true'" /> - <_InstallersToPublish Include="$(ArtifactsDir)installers\**\*.deb" UploadPathSegment="Runtime" ChecksumPath="%(FullPath).sha512" /> + <_InstallersToPublish Include="$(ArtifactsDir)packages\**\*.deb" UploadPathSegment="Runtime" ChecksumPath="%(FullPath).sha512" /> + <_InstallersToPublish Include="$(ArtifactsDir)packages\**\*.rpm" UploadPathSegment="Runtime" ChecksumPath="%(FullPath).sha512" /> + <_InstallersToPublish Include="$(ArtifactsDir)packages\**\*.tar.gz" UploadPathSegment="Runtime" ChecksumPath="%(FullPath).sha512" /> + <_InstallersToPublish Include="$(ArtifactsDir)packages\**\*.zip" UploadPathSegment="Runtime" > + <_InstallersToPublish Include="$(ArtifactsDir)installers\**\*.exe" UploadPathSegment="Runtime" ChecksumPath="%(FullPath).sha512" /> <_InstallersToPublish Include="$(ArtifactsDir)installers\**\*.msi" UploadPathSegment="Runtime" ChecksumPath="%(FullPath).sha512" /> - <_InstallersToPublish Include="$(ArtifactsDir)installers\**\*.rpm" UploadPathSegment="Runtime" ChecksumPath="%(FullPath).sha512" /> - <_InstallersToPublish Include="$(ArtifactsDir)installers\**\*.tar.gz" UploadPathSegment="Runtime" ChecksumPath="%(FullPath).sha512" /> <_InstallersToPublish Include="$(ArtifactsDir)installers\**\*.wixlib" UploadPathSegment="Runtime" ChecksumPath="%(FullPath).sha512" /> - <_InstallersToPublish Include="$(ArtifactsDir)installers\**\*.zip" UploadPathSegment="Runtime" > %(FullPath).sha512 diff --git a/eng/Signing.props b/eng/Signing.props index c8f233696c6f..d53f37c7dce8 100644 --- a/eng/Signing.props +++ b/eng/Signing.props @@ -19,7 +19,7 @@ - + diff --git a/src/Installers/Windows/SharedFramework/SharedFramework.wixproj b/src/Installers/Windows/SharedFramework/SharedFramework.wixproj index 92eeef609891..0235a8c37dd1 100644 --- a/src/Installers/Windows/SharedFramework/SharedFramework.wixproj +++ b/src/Installers/Windows/SharedFramework/SharedFramework.wixproj @@ -63,9 +63,9 @@ - $(InstallersOutputPath) - $(InstallersOutputPath) - $(InstallersOutputPath) + $(ArtifactsShippingPackagesDir) + $(ArtifactsShippingPackagesDir) + $(ArtifactsShippingPackagesDir) $(SharedFrameworkArm64HarvestRootPath)aspnetcore-runtime-$(PackageVersion)-win-arm64.zip $(SharedFrameworkX64HarvestRootPath)aspnetcore-runtime-$(PackageVersion)-win-x64.zip $(SharedFrameworkX86HarvestRootPath)aspnetcore-runtime-$(PackageVersion)-win-x86.zip diff --git a/src/Installers/Windows/TargetingPack/TargetingPack.wixproj b/src/Installers/Windows/TargetingPack/TargetingPack.wixproj index 4823d1c89f33..1c41fba0361d 100644 --- a/src/Installers/Windows/TargetingPack/TargetingPack.wixproj +++ b/src/Installers/Windows/TargetingPack/TargetingPack.wixproj @@ -63,7 +63,7 @@ - $(InstallersOutputPath) + $(ArtifactsShippingPackagesDir) $(TargetingPackVersionPrefix) $(TargetingPackZipVersion)-$(VersionSuffix) $(TargetingPackHarvestRoot)aspnetcore-targeting-pack-$(TargetingPackZipVersion)-$(TargetRuntimeIdentifier).zip From b176f09e732cb2febf0f43a8d1f56f76a7309127 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Mon, 28 Oct 2024 18:19:07 +0000 Subject: [PATCH 24/50] Fix including zips (as wixpacks are still in the intsallers folder) --- eng/Publishing.props | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/eng/Publishing.props b/eng/Publishing.props index 2115676b265d..eb1e5734d6cb 100644 --- a/eng/Publishing.props +++ b/eng/Publishing.props @@ -34,11 +34,12 @@ <_InstallersToPublish Include="$(ArtifactsDir)packages\**\*.deb" UploadPathSegment="Runtime" ChecksumPath="%(FullPath).sha512" /> <_InstallersToPublish Include="$(ArtifactsDir)packages\**\*.rpm" UploadPathSegment="Runtime" ChecksumPath="%(FullPath).sha512" /> <_InstallersToPublish Include="$(ArtifactsDir)packages\**\*.tar.gz" UploadPathSegment="Runtime" ChecksumPath="%(FullPath).sha512" /> - <_InstallersToPublish Include="$(ArtifactsDir)packages\**\*.zip" UploadPathSegment="Runtime" > + <_InstallersToPublish Include="$(ArtifactsDir)packages\**\*.zip" UploadPathSegment="Runtime" /> <_InstallersToPublish Include="$(ArtifactsDir)installers\**\*.exe" UploadPathSegment="Runtime" ChecksumPath="%(FullPath).sha512" /> <_InstallersToPublish Include="$(ArtifactsDir)installers\**\*.msi" UploadPathSegment="Runtime" ChecksumPath="%(FullPath).sha512" /> <_InstallersToPublish Include="$(ArtifactsDir)installers\**\*.wixlib" UploadPathSegment="Runtime" ChecksumPath="%(FullPath).sha512" /> + <_InstallersToPublish Include="$(ArtifactsDir)installers\**\*.zip" UploadPathSegment="Runtime"> %(FullPath).sha512 From 5ed00aaa40824636dbbcc1e38e6e0bb9bcb1de02 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Tue, 29 Oct 2024 13:29:03 -0700 Subject: [PATCH 25/50] Build the shared frameworks via the transitive SDK proj only and make the native project references "just work" without a separate target. --- eng/Build.props | 1 - ...Microsoft.AspNetCore.App.Runtime.Composite.sfxproj | 10 ++-------- .../src/Microsoft.AspNetCore.App.Runtime.sfxproj | 11 ++--------- src/Framework/App.Runtime/src/aspnetcore-runtime.proj | 5 ++++- 4 files changed, 8 insertions(+), 19 deletions(-) diff --git a/eng/Build.props b/eng/Build.props index e764d3d64a25..0663b7a8fbbc 100644 --- a/eng/Build.props +++ b/eng/Build.props @@ -150,7 +150,6 @@ $(RepoRoot)src\Framework\App.Ref.Internal\src\Microsoft.AspNetCore.App.Ref.Internal.csproj; $(RepoRoot)src\Framework\App.Runtime\src\aspnetcore-runtime.proj; $(RepoRoot)src\Framework\App.Runtime\src\aspnetcore-runtime-composite.proj; - $(RepoRoot)src\Framework\App.Runtime\src\Microsoft.AspNetCore.App.Runtime.sfxproj; $(RepoRoot)src\Framework\AspNetCoreAnalyzers\test\Microsoft.AspNetCore.App.Analyzers.Test.csproj; $(RepoRoot)src\Framework\test\Microsoft.AspNetCore.App.UnitTests.csproj; $(RepoRoot)src\Caching\**\*.*proj; diff --git a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj index f7bc1566d389..3ba73296d365 100644 --- a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj +++ b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj @@ -79,12 +79,12 @@ Include="$(RepoRoot)src\Servers\IIS\AspNetCoreModuleV2\InProcessRequestHandler\InProcessRequestHandler.vcxproj"> Platform=$(NativePlatform) - _ResolvedNativeProjectReferencePaths + NativeRuntimeAsset Build;GetTargetPath - <_ResolvedNativeProjectReferencePaths Condition=" '$(UseIisNativeAssets)' == 'true' AND !$(BuildNative) " + @@ -95,10 +95,4 @@ !EXISTS('$(ArtifactsBinDir)InProcessRequestHandler\$(NativePlatform)\$(Configuration)\aspnetcorev2_inprocess.dll') "> - - - - - - diff --git a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj index ff91eac9dfed..3463b3640e57 100644 --- a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj +++ b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj @@ -70,13 +70,12 @@ Platform=$(NativePlatform) - - _ResolvedNativeProjectReferencePaths + NativeRuntimeAsset Build;GetTargetPath - <_ResolvedNativeProjectReferencePaths Condition=" '$(UseIisNativeAssets)' == 'true' AND !$(BuildNative) " + @@ -88,12 +87,6 @@ - - - - - - - + https://github.com/dotnet/symreader diff --git a/eng/Versions.props b/eng/Versions.props index 79eceb4123c1..d5dabc1bd07f 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -179,6 +179,12 @@ 9.0.0-preview.24522.2 9.0.0-preview.24522.2 + + 1.0.0-prerelease.24462.2 + 1.0.0-prerelease.24462.2 + 1.0.0-prerelease.24462.2 + 1.0.0-prerelease.24462.2 + 1.0.0-prerelease.24462.2 + + + + + + + + + + + + + + + + + + + + + + $(GetSharedFrameworkFilesForReadyToRunDependsOn);_AddOptimizationDataForReadyToRun + + + + + + + $(NuGetPackageRoot)%(MIBCPackage.Identity)/%(MIBCPackage.Version) + + + + + From b274123a90704787b10c327d95c2d268c905cbfe Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Tue, 29 Oct 2024 16:18:08 -0700 Subject: [PATCH 27/50] Don't exclude the runtime archive traversal proj from the source-only build. --- src/Framework/App.Runtime/src/aspnetcore-runtime.proj | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/Framework/App.Runtime/src/aspnetcore-runtime.proj b/src/Framework/App.Runtime/src/aspnetcore-runtime.proj index 14c2453f854d..df8a86b00994 100644 --- a/src/Framework/App.Runtime/src/aspnetcore-runtime.proj +++ b/src/Framework/App.Runtime/src/aspnetcore-runtime.proj @@ -7,6 +7,12 @@ true + + + false From 18fe593072dc50f868b3106cc98b0239f84ac6a1 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Wed, 30 Oct 2024 13:53:24 -0700 Subject: [PATCH 28/50] Add some makedirs --- src/Framework/App.Runtime/src/aspnetcore-runtime-composite.proj | 2 ++ src/Framework/App.Runtime/src/aspnetcore-runtime.proj | 2 ++ 2 files changed, 4 insertions(+) diff --git a/src/Framework/App.Runtime/src/aspnetcore-runtime-composite.proj b/src/Framework/App.Runtime/src/aspnetcore-runtime-composite.proj index 08dc9112ef9f..4c88d89651e9 100644 --- a/src/Framework/App.Runtime/src/aspnetcore-runtime-composite.proj +++ b/src/Framework/App.Runtime/src/aspnetcore-runtime-composite.proj @@ -50,6 +50,8 @@ + + diff --git a/src/Framework/App.Runtime/src/aspnetcore-runtime.proj b/src/Framework/App.Runtime/src/aspnetcore-runtime.proj index df8a86b00994..aacdd4c76cca 100644 --- a/src/Framework/App.Runtime/src/aspnetcore-runtime.proj +++ b/src/Framework/App.Runtime/src/aspnetcore-runtime.proj @@ -71,6 +71,8 @@ + + From c6c4e71ffe5e612116764dd68c8e58bb3b0d51c1 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Thu, 31 Oct 2024 17:30:30 -0700 Subject: [PATCH 29/50] Don't try to extract the runtime we skipped downloading --- .../App.Runtime/src/aspnetcore-runtime-composite.proj | 6 ++---- src/Framework/App.Runtime/src/aspnetcore-runtime.proj | 6 ++---- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/src/Framework/App.Runtime/src/aspnetcore-runtime-composite.proj b/src/Framework/App.Runtime/src/aspnetcore-runtime-composite.proj index 4c88d89651e9..4cff7da9d51a 100644 --- a/src/Framework/App.Runtime/src/aspnetcore-runtime-composite.proj +++ b/src/Framework/App.Runtime/src/aspnetcore-runtime-composite.proj @@ -50,13 +50,11 @@ - - - - diff --git a/src/Framework/App.Runtime/src/aspnetcore-runtime.proj b/src/Framework/App.Runtime/src/aspnetcore-runtime.proj index aacdd4c76cca..f6a4a05d8c37 100644 --- a/src/Framework/App.Runtime/src/aspnetcore-runtime.proj +++ b/src/Framework/App.Runtime/src/aspnetcore-runtime.proj @@ -60,10 +60,10 @@ - - @@ -71,8 +71,6 @@ - - From b84d04d27f4b083abbdcff88e0af4cadee760b9f Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Fri, 1 Nov 2024 14:12:39 -0700 Subject: [PATCH 30/50] Always prefer the ref assemblies in the transport pack over the impl assemblies when building the ref pack. --- eng/targets/ResolveReferences.targets | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/eng/targets/ResolveReferences.targets b/eng/targets/ResolveReferences.targets index 925a1158fc6c..36c3f231ab4b 100644 --- a/eng/targets/ResolveReferences.targets +++ b/eng/targets/ResolveReferences.targets @@ -269,11 +269,12 @@ --> + $(_CompileTfmUsingReferenceAssemblies)) "> + + <_AspNetCoreAppPackageOverrides Include="@(ReferencePath->'%(FileName)|$(MicrosoftNETCoreAppRuntimeVersion)')" + Condition="'%(ReferencePath.NuGetPackageId)' == 'Microsoft.Internal.Runtime.AspNetCore.Transport' AND + '%(ReferencePath.NuGetSourceType)' == 'Package' " /> + + <_AspNetCoreAppPackageOverrides Include="@(ReferencePath->'%(FileName)|$(ReferencePackSharedFxVersion)')" Condition=" '%(ReferencePath.ReferenceSourceTarget)' == 'ProjectReference' " /> diff --git a/src/Framework/test/Microsoft.AspNetCore.App.UnitTests.csproj b/src/Framework/test/Microsoft.AspNetCore.App.UnitTests.csproj index 57bf8365044c..6f9167f1f975 100644 --- a/src/Framework/test/Microsoft.AspNetCore.App.UnitTests.csproj +++ b/src/Framework/test/Microsoft.AspNetCore.App.UnitTests.csproj @@ -95,7 +95,9 @@ - <_TargetingPackDependencies Include="@(_TargetingPackFiles->WithMetadataValue('Extension','.dll'))" /> + <_AnalyzersInTargetingPack Include="@(_TargetingPackFiles)" Condition="$([System.String]::new('%(_TargetingPackFiles.Directory)').Contains('analyzers'))" /> + <_AnalyzersInTargetingPack Include="@(_TargetingPackFiles->WithMetadataValue('OutputItemType','AspNetCoreAnalyzer'))" /> + <_TargetingPackDependencies Include="@(_TargetingPackFiles->WithMetadataValue('Extension','.dll'))" Exclude="@(_AnalyzersInTargetingPack)" /> <_Parameter1>TargetingPackDependencies From 801f78b23e19b02c7d207e5a6a2770051fe89484 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Fri, 1 Nov 2024 15:25:21 -0700 Subject: [PATCH 32/50] Enable building all projects using the sharedfx sdk in source-build --- Directory.Build.BeforeCommonTargets.targets | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Build.BeforeCommonTargets.targets b/Directory.Build.BeforeCommonTargets.targets index f25d6a7ebff7..8ce4366421d1 100644 --- a/Directory.Build.BeforeCommonTargets.targets +++ b/Directory.Build.BeforeCommonTargets.targets @@ -6,7 +6,7 @@ Condition="'$(ExcludeFromSourceOnlyBuild)' == '' and '$(DotNetBuildSourceOnly)' == 'true' and '$(IsAspNetCoreApp)' != 'true' and - '$(MSBuildProjectName)' != '$(TargetingPackName)' and + '$(UsingMicrosoftDotNetSharedFrameworkSdk)' != 'true' and '$(IsAnalyzersProject)' != 'true' and '$(IsProjectTemplateProject)' != 'true'">true From cd60089ee94362988cc0664420d225c742f31ce4 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Fri, 1 Nov 2024 15:38:36 -0700 Subject: [PATCH 33/50] Don't exclude the composite archive from source build. --- .../App.Runtime/src/aspnetcore-runtime-composite.proj | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/Framework/App.Runtime/src/aspnetcore-runtime-composite.proj b/src/Framework/App.Runtime/src/aspnetcore-runtime-composite.proj index 4cff7da9d51a..3c7ee41af1fa 100644 --- a/src/Framework/App.Runtime/src/aspnetcore-runtime-composite.proj +++ b/src/Framework/App.Runtime/src/aspnetcore-runtime-composite.proj @@ -7,6 +7,12 @@ true + + + false From 0ba647002728882d9debc8b5379c7ecb84cb3ab7 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Fri, 1 Nov 2024 17:07:41 -0700 Subject: [PATCH 34/50] Write out the aspnetcore_base_runtime.version file --- eng/Build.props | 1 + global.json | 1 + .../src/aspnetcore-base-runtime.proj | 18 ++++++++++++++++++ 3 files changed, 20 insertions(+) create mode 100644 src/Framework/App.Runtime/src/aspnetcore-base-runtime.proj diff --git a/eng/Build.props b/eng/Build.props index 0663b7a8fbbc..f26f1912ed17 100644 --- a/eng/Build.props +++ b/eng/Build.props @@ -150,6 +150,7 @@ $(RepoRoot)src\Framework\App.Ref.Internal\src\Microsoft.AspNetCore.App.Ref.Internal.csproj; $(RepoRoot)src\Framework\App.Runtime\src\aspnetcore-runtime.proj; $(RepoRoot)src\Framework\App.Runtime\src\aspnetcore-runtime-composite.proj; + $(RepoRoot)src\Framework\App.Runtime\src\aspnetcore-base-runtime.proj; $(RepoRoot)src\Framework\AspNetCoreAnalyzers\test\Microsoft.AspNetCore.App.Analyzers.Test.csproj; $(RepoRoot)src\Framework\test\Microsoft.AspNetCore.App.UnitTests.csproj; $(RepoRoot)src\Caching\**\*.*proj; diff --git a/global.json b/global.json index aa9529a3d2a7..8a2afa41316e 100644 --- a/global.json +++ b/global.json @@ -30,6 +30,7 @@ "Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.24531.2", "Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.24531.2", "Microsoft.DotNet.SharedFramework.Sdk" : "10.0.0-beta.24531.2", + "Microsoft.Build.NoTargets": "3.7.0", "Microsoft.Build.Traversal": "3.4.0" } } diff --git a/src/Framework/App.Runtime/src/aspnetcore-base-runtime.proj b/src/Framework/App.Runtime/src/aspnetcore-base-runtime.proj new file mode 100644 index 000000000000..6f39eec86bdd --- /dev/null +++ b/src/Framework/App.Runtime/src/aspnetcore-base-runtime.proj @@ -0,0 +1,18 @@ + + + $(DefaultNetCoreTargetFramework) + + aspnetcore_base_runtime.version + $(InstallersOutputPath)$(BaseRuntimeVersionFileName) + + false + + + + + + From 80bfc79d220af0e8f9daf7709c731e3072276bbb Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Fri, 1 Nov 2024 17:36:19 -0700 Subject: [PATCH 35/50] Update aspnetcore-base-runtime.proj --- src/Framework/App.Runtime/src/aspnetcore-base-runtime.proj | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Framework/App.Runtime/src/aspnetcore-base-runtime.proj b/src/Framework/App.Runtime/src/aspnetcore-base-runtime.proj index 6f39eec86bdd..842ba7c97d32 100644 --- a/src/Framework/App.Runtime/src/aspnetcore-base-runtime.proj +++ b/src/Framework/App.Runtime/src/aspnetcore-base-runtime.proj @@ -8,6 +8,7 @@ This version file is required by source-build. --> false + false From 1795fc91227b9b23865a64077d5cd9bf0a65016a Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Mon, 4 Nov 2024 14:21:52 -0800 Subject: [PATCH 36/50] Don't R2R when explicitly requested not to --- .../src/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj | 2 ++ .../App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj | 2 ++ 2 files changed, 4 insertions(+) diff --git a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj index 3ba73296d365..63b9368690b4 100644 --- a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj +++ b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.Composite.sfxproj @@ -18,6 +18,8 @@ false true + + false true diff --git a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj index 3463b3640e57..d18f7b474080 100644 --- a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj +++ b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj @@ -18,6 +18,8 @@ false true + + false $(RuntimeInstallerBaseName) true From b1b144da84cca1bb3e95d1864c1d88d3cf416b91 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Tue, 5 Nov 2024 10:46:17 -0800 Subject: [PATCH 37/50] Update .NET SDK to get composite image fix --- global.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/global.json b/global.json index a0d54f1a6591..4d5bb03a7c78 100644 --- a/global.json +++ b/global.json @@ -1,9 +1,9 @@ { "sdk": { - "version": "10.0.100-alpha.1.24510.13" + "version": "10.0.100-alpha.1.24551.9" }, "tools": { - "dotnet": "10.0.100-alpha.1.24510.13", + "dotnet": "10.0.100-alpha.1.24551.9", "runtimes": { "dotnet/x86": [ "$(MicrosoftNETCoreBrowserDebugHostTransportVersion)" From b6ff5fb89f9ff2aba278258e1a742fa2e70f4ffb Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Tue, 5 Nov 2024 11:32:15 -0800 Subject: [PATCH 38/50] Use the new RPM tooling and build debs/rpms in the regular build step (instead of as separate steps) --- .azure/pipelines/ci-public.yml | 40 +------------------ .azure/pipelines/ci.yml | 38 +----------------- .../src/Microsoft.AspNetCore.App.Ref.sfxproj | 16 +++++++- .../Microsoft.AspNetCore.App.Runtime.sfxproj | 10 ++++- 4 files changed, 24 insertions(+), 80 deletions(-) diff --git a/.azure/pipelines/ci-public.yml b/.azure/pipelines/ci-public.yml index b09c6cac5387..ebdf9bd974de 100644 --- a/.azure/pipelines/ci-public.yml +++ b/.azure/pipelines/ci-public.yml @@ -79,14 +79,6 @@ variables: value: true - template: /eng/common/templates/variables/pool-providers.yml -resources: - containers: - - container: debpkg - image: mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-22.04-debpkg - - - container: rpmpkg - image: mcr.microsoft.com/dotnet-buildtools/prereqs:cbl-mariner-2.0-fpm - stages: - stage: build displayName: Build @@ -313,43 +305,13 @@ stages: --ci --arch x64 --pack + --build-installers --all --no-build-java -p:OnlyPackPlatformSpecificPackages=true $(_BuildArgs) $(_InternalRuntimeDownloadArgs) displayName: Run build.sh - - script: ./eng/build.sh - --ci - --nobl - --arch x64 - --build-installers - --no-build-deps - --no-build-nodejs - -p:OnlyPackPlatformSpecificPackages=true - -p:BuildRuntimeArchive=false - -p:LinuxInstallerType=deb - $(_BuildArgs) - $(_InternalRuntimeDownloadArgs) - displayName: Build Debian installers - target: debpkg - - script: ./eng/build.sh - --ci - --nobl - --arch x64 - --build-installers - --no-build-deps - --no-build-nodejs - --publish - -p:OnlyPackPlatformSpecificPackages=true - -p:BuildRuntimeArchive=false - -p:LinuxInstallerType=rpm - -p:AssetManifestFileName=aspnetcore-Linux_x64.xml - $(_BuildArgs) - $(_PublishArgs) - $(_InternalRuntimeDownloadArgs) - displayName: Build RPM installers - target: rpmpkg artifacts: - name: Linux_x64_Logs_Attempt_$(System.JobAttempt) path: artifacts/log/ diff --git a/.azure/pipelines/ci.yml b/.azure/pipelines/ci.yml index 5888239ace76..3424d0ef65ac 100644 --- a/.azure/pipelines/ci.yml +++ b/.azure/pipelines/ci.yml @@ -121,12 +121,6 @@ variables: - template: /eng/common/templates-official/variables/pool-providers.yml@self resources: - containers: - - container: debpkg - image: mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-22.04-debpkg - - - container: rpmpkg - image: mcr.microsoft.com/dotnet-buildtools/prereqs:cbl-mariner-2.0-fpm repositories: # Repo: 1ESPipelineTemplates/1ESPipelineTemplates - repository: 1esPipelines @@ -383,42 +377,12 @@ extends: --arch x64 --pack --all + --build-installers --no-build-java -p:OnlyPackPlatformSpecificPackages=true $(_BuildArgs) $(_InternalRuntimeDownloadArgs) displayName: Run build.sh - - script: ./eng/build.sh - --ci - --nobl - --arch x64 - --build-installers - --no-build-deps - --no-build-nodejs - -p:OnlyPackPlatformSpecificPackages=true - -p:BuildRuntimeArchive=false - -p:LinuxInstallerType=deb - $(_BuildArgs) - $(_InternalRuntimeDownloadArgs) - displayName: Build Debian installers - target: debpkg - - script: ./eng/build.sh - --ci - --nobl - --arch x64 - --build-installers - --no-build-deps - --no-build-nodejs - --publish - -p:OnlyPackPlatformSpecificPackages=true - -p:BuildRuntimeArchive=false - -p:LinuxInstallerType=rpm - -p:AssetManifestFileName=aspnetcore-Linux_x64.xml - $(_BuildArgs) - $(_PublishArgs) - $(_InternalRuntimeDownloadArgs) - displayName: Build RPM installers - target: rpmpkg artifacts: - name: Linux_x64_Logs_Attempt_$(System.JobAttempt) path: artifacts/log/ diff --git a/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj b/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj index d3fb4db11d3d..0f31a5b9cbe7 100644 --- a/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj +++ b/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj @@ -30,8 +30,9 @@ - true - true + true + true + true @@ -171,4 +172,15 @@ Targets="PublishToDisk" Properties="OutputPath=$(TargetingPackLayoutRoot)" /> + + + + + + + + + + + diff --git a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj index d18f7b474080..ba2a5476f6dd 100644 --- a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj +++ b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj @@ -42,8 +42,8 @@ - true - true + true + true @@ -96,4 +96,10 @@ + + + + + + From 6aed4963cbeaba3a7271494d64835e3412ec0423 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Tue, 5 Nov 2024 11:49:07 -0800 Subject: [PATCH 39/50] Remove rpmpkg references and update ref pack baseline version --- .azure/pipelines/ci-public.yml | 17 ----------------- .azure/pipelines/ci.yml | 17 ----------------- eng/SourceBuildPrebuiltBaseline.xml | 2 +- 3 files changed, 1 insertion(+), 35 deletions(-) diff --git a/.azure/pipelines/ci-public.yml b/.azure/pipelines/ci-public.yml index ebdf9bd974de..d2fa208634d6 100644 --- a/.azure/pipelines/ci-public.yml +++ b/.azure/pipelines/ci-public.yml @@ -372,23 +372,6 @@ stages: $(_BuildArgs) $(_InternalRuntimeDownloadArgs) displayName: Run build.sh - - script: ./eng/build.sh - --ci - --nobl - --arch arm64 - --build-installers - --no-build-deps - --no-build-nodejs - --publish - -p:OnlyPackPlatformSpecificPackages=true - -p:BuildRuntimeArchive=false - -p:LinuxInstallerType=rpm - -p:AssetManifestFileName=aspnetcore-Linux_arm64.xml - $(_BuildArgs) - $(_PublishArgs) - $(_InternalRuntimeDownloadArgs) - displayName: Build RPM installers - target: rpmpkg artifacts: - name: Linux_arm64_Logs_Attempt_$(System.JobAttempt) path: artifacts/log/ diff --git a/.azure/pipelines/ci.yml b/.azure/pipelines/ci.yml index 3424d0ef65ac..ca53c5ee0206 100644 --- a/.azure/pipelines/ci.yml +++ b/.azure/pipelines/ci.yml @@ -443,23 +443,6 @@ extends: $(_BuildArgs) $(_InternalRuntimeDownloadArgs) displayName: Run build.sh - - script: ./eng/build.sh - --ci - --nobl - --arch arm64 - --build-installers - --no-build-deps - --no-build-nodejs - --publish - -p:OnlyPackPlatformSpecificPackages=true - -p:BuildRuntimeArchive=false - -p:LinuxInstallerType=rpm - -p:AssetManifestFileName=aspnetcore-Linux_arm64.xml - $(_BuildArgs) - $(_PublishArgs) - $(_InternalRuntimeDownloadArgs) - displayName: Build RPM installers - target: rpmpkg artifacts: - name: Linux_arm64_Logs_Attempt_$(System.JobAttempt) path: artifacts/log/ diff --git a/eng/SourceBuildPrebuiltBaseline.xml b/eng/SourceBuildPrebuiltBaseline.xml index df4d87887caf..895df923dc02 100644 --- a/eng/SourceBuildPrebuiltBaseline.xml +++ b/eng/SourceBuildPrebuiltBaseline.xml @@ -50,7 +50,7 @@ - + From 555c39e949dc553b177d6c9b92dad03676a15ae2 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Tue, 5 Nov 2024 12:03:15 -0800 Subject: [PATCH 40/50] Fix version string --- eng/SourceBuildPrebuiltBaseline.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/SourceBuildPrebuiltBaseline.xml b/eng/SourceBuildPrebuiltBaseline.xml index 895df923dc02..7dc26323656a 100644 --- a/eng/SourceBuildPrebuiltBaseline.xml +++ b/eng/SourceBuildPrebuiltBaseline.xml @@ -50,7 +50,7 @@ - + From 72f970cb9e9b927ef563ef5378d08745b3abc0d4 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Tue, 5 Nov 2024 12:10:27 -0800 Subject: [PATCH 41/50] Remove installers group on Build.props as the "managed" build will now correctly trigger debs/rpms when requested --- eng/Build.props | 5 ----- 1 file changed, 5 deletions(-) diff --git a/eng/Build.props b/eng/Build.props index f26f1912ed17..bb35702137ad 100644 --- a/eng/Build.props +++ b/eng/Build.props @@ -113,11 +113,6 @@ - - - - - From 0b25d0e89abd1ca320ef5fb557b2e5cf62d4f97c Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Tue, 5 Nov 2024 13:57:08 -0800 Subject: [PATCH 42/50] Use Arcade RPM tooling for the Runtime sfxproj --- .../App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj index ba2a5476f6dd..a9a9828db384 100644 --- a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj +++ b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj @@ -44,6 +44,7 @@ true true + true From 1f1faf6b9376637ecdbd425886a5a5db7d8d233c Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Tue, 5 Nov 2024 14:24:17 -0800 Subject: [PATCH 43/50] Revert "Update .NET SDK to get composite image fix" This reverts commit b1b144da84cca1bb3e95d1864c1d88d3cf416b91. --- eng/SourceBuildPrebuiltBaseline.xml | 2 +- global.json | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/SourceBuildPrebuiltBaseline.xml b/eng/SourceBuildPrebuiltBaseline.xml index 7dc26323656a..df4d87887caf 100644 --- a/eng/SourceBuildPrebuiltBaseline.xml +++ b/eng/SourceBuildPrebuiltBaseline.xml @@ -50,7 +50,7 @@ - + diff --git a/global.json b/global.json index 4d5bb03a7c78..a0d54f1a6591 100644 --- a/global.json +++ b/global.json @@ -1,9 +1,9 @@ { "sdk": { - "version": "10.0.100-alpha.1.24551.9" + "version": "10.0.100-alpha.1.24510.13" }, "tools": { - "dotnet": "10.0.100-alpha.1.24551.9", + "dotnet": "10.0.100-alpha.1.24510.13", "runtimes": { "dotnet/x86": [ "$(MicrosoftNETCoreBrowserDebugHostTransportVersion)" From ed7c875a83a0ab3d6edcf4f8c6e771951fe109f8 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Wed, 13 Nov 2024 12:07:44 -0800 Subject: [PATCH 44/50] Don't pack the ref pack when only packing rid-specific packages --- src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj b/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj index 0f31a5b9cbe7..7cee6e087ab0 100644 --- a/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj +++ b/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj @@ -14,6 +14,8 @@ true Microsoft ASP.NET Core + false + ASP.NET Core Targeting Pack $(SharedFxDescription) $(RepoRoot)LICENSE.txt From f1a78462f290050b1f97f7a30aaffb0a4b8fe43d Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Wed, 13 Nov 2024 14:19:49 -0800 Subject: [PATCH 45/50] Remove RpmOwnedDirectory items as they're now provided by the SharedFramework SDK. --- .../App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj | 11 ----------- .../src/Microsoft.AspNetCore.App.Runtime.sfxproj | 6 ------ 2 files changed, 17 deletions(-) diff --git a/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj b/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj index 7cee6e087ab0..0d42460b5779 100644 --- a/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj +++ b/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj @@ -174,15 +174,4 @@ Targets="PublishToDisk" Properties="OutputPath=$(TargetingPackLayoutRoot)" /> - - - - - - - - - - - diff --git a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj index a9a9828db384..b810f006288d 100644 --- a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj +++ b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj @@ -97,10 +97,4 @@ - - - - - - From cd7c2c6a6d62e1c708d8455e85027b50b2c8b4e7 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Wed, 13 Nov 2024 14:23:19 -0800 Subject: [PATCH 46/50] Don't build installers in source-build --- src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj | 2 +- .../App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj b/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj index 0d42460b5779..9747468a2efe 100644 --- a/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj +++ b/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj @@ -39,7 +39,7 @@ - + diff --git a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj index b810f006288d..852a7a187dc5 100644 --- a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj +++ b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj @@ -53,7 +53,7 @@ - + From 4937671c2be2407dd7cefd3c4e2988af952a5766 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Wed, 4 Dec 2024 15:45:57 -0800 Subject: [PATCH 47/50] Pass linux installer/archive artifacts over to the signing jobs --- .azure/pipelines/jobs/codesign-xplat.yml | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/.azure/pipelines/jobs/codesign-xplat.yml b/.azure/pipelines/jobs/codesign-xplat.yml index 800da4f41398..13ff68a3ecd1 100644 --- a/.azure/pipelines/jobs/codesign-xplat.yml +++ b/.azure/pipelines/jobs/codesign-xplat.yml @@ -19,12 +19,20 @@ jobs: inputs: artifactName: ${{ parameters.inputName }}_Packages downloadPath: $(Build.StagingDirectory)/downloaded_packages/ - itemPattern: '**/*.nupkg' + itemPattern: | + **/*.nupkg + **/*.tar.gz + **/*.deb + **/*.rpm - task: CopyFiles@2 displayName: Copy packages to ArtifactsShippingPackagesDir inputs: sourceFolder: $(Build.StagingDirectory)/downloaded_packages/ - contents: '**/*.nupkg' + contents: | + **/*.nupkg + **/*.tar.gz + **/*.deb + **/*.rpm targetFolder: $(Build.SourcesDirectory)/artifacts/packages/$(BuildConfiguration)/shipping/ flattenFolders: true - powershell: .\eng\common\build.ps1 From 3147799ebbfab12e5de7d817e6d3b303c86a07d5 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Thu, 5 Dec 2024 09:37:57 -0800 Subject: [PATCH 48/50] Don't publish the unsigned build if we're not doing post-build signing. We'll publish from the signing job. --- .azure/pipelines/ci.yml | 56 ++++++++++++++++++++--------------------- 1 file changed, 27 insertions(+), 29 deletions(-) diff --git a/.azure/pipelines/ci.yml b/.azure/pipelines/ci.yml index 282e42eb5f71..e2650723b796 100644 --- a/.azure/pipelines/ci.yml +++ b/.azure/pipelines/ci.yml @@ -44,9 +44,13 @@ variables: - ${{ if or(startswith(variables['Build.SourceBranch'], 'refs/heads/release/'), startswith(variables['Build.SourceBranch'], 'refs/heads/internal/release/'), eq(variables['Build.Reason'], 'Manual')) }}: - name: PostBuildSign value: false + - name: _ArcadePublishNonWindowsArg + value: '' - ${{ else }}: - name: PostBuildSign value: true + - name: _ArcadePublishNonWindowsArg + value: --publish - name: _UseHelixOpenQueues value: ${{ ne(variables['System.TeamProject'], 'internal') }} - ${{ if and(notin(variables['Build.Reason'], 'PullRequest'), eq(variables['Build.SourceBranch'], 'refs/heads/main')) }}: @@ -315,7 +319,7 @@ extends: --pack --all --no-build-java - --publish + $(_ArcadePublishNonWindowsArg) -p:OnlyPackPlatformSpecificPackages=true -p:AssetManifestFileName=aspnetcore-MacOS_arm64.xml $(_BuildArgs) @@ -345,7 +349,7 @@ extends: --pack --all --no-build-java - --publish + $(_ArcadePublishNonWindowsArg) -p:OnlyPackPlatformSpecificPackages=true -p:AssetManifestFileName=aspnetcore-MacOS_x64.xml $(_BuildArgs) @@ -371,18 +375,15 @@ extends: jobDisplayName: "Build: Linux x64" agentOs: Linux useHostedUbuntu: false - steps: - - script: ./eng/build.sh - --ci - --arch x64 - --pack - --all - --build-installers - --no-build-java - -p:OnlyPackPlatformSpecificPackages=true - $(_BuildArgs) - $(_InternalRuntimeDownloadArgs) - displayName: Run build.sh + buildArgs: + --arch x64 + --pack + --all + --build-installers + --no-build-java + -p:OnlyPackPlatformSpecificPackages=true + $(_BuildArgs) + $(_InternalRuntimeDownloadArgs) artifacts: - name: Linux_x64_Logs_Attempt_$(System.JobAttempt) path: artifacts/log/ @@ -407,7 +408,7 @@ extends: --pack --all --no-build-java - --publish + $(_ArcadePublishNonWindowsArg) -p:OnlyPackPlatformSpecificPackages=true -p:AssetManifestFileName=aspnetcore-Linux_arm.xml $(_BuildArgs) @@ -432,17 +433,14 @@ extends: jobName: Linux_arm64_build jobDisplayName: "Build: Linux ARM64" agentOs: Linux - steps: - - script: ./eng/build.sh - --ci - --arch arm64 - --pack - --all - --no-build-java - -p:OnlyPackPlatformSpecificPackages=true - $(_BuildArgs) - $(_InternalRuntimeDownloadArgs) - displayName: Run build.sh + buildArgs: + --arch arm64 + --pack + --all + --no-build-java + -p:OnlyPackPlatformSpecificPackages=true + $(_BuildArgs) + $(_InternalRuntimeDownloadArgs) artifacts: - name: Linux_arm64_Logs_Attempt_$(System.JobAttempt) path: artifacts/log/ @@ -469,7 +467,7 @@ extends: --pack --all --no-build-java - --publish + $(_ArcadePublishNonWindowsArg) -p:OnlyPackPlatformSpecificPackages=true -p:AssetManifestFileName=aspnetcore-Linux_musl_x64.xml $(_BuildArgs) @@ -503,7 +501,7 @@ extends: --pack --all --no-build-java - --publish + $(_ArcadePublishNonWindowsArg) -p:OnlyPackPlatformSpecificPackages=true -p:AssetManifestFileName=aspnetcore-Linux_musl_arm.xml $(_BuildArgs) @@ -536,7 +534,7 @@ extends: --pack --all --no-build-java - --publish + $(_ArcadePublishNonWindowsArg) -p:OnlyPackPlatformSpecificPackages=true -p:AssetManifestFileName=aspnetcore-Linux_musl_arm64.xml $(_BuildArgs) From fd2ade030f78bdaf8d8c5d8f7abb8e1659f2f358 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Thu, 5 Dec 2024 13:29:23 -0800 Subject: [PATCH 49/50] Bulid installers on Linux-arm64 --- .azure/pipelines/ci-public.yml | 1 + .azure/pipelines/ci.yml | 1 + 2 files changed, 2 insertions(+) diff --git a/.azure/pipelines/ci-public.yml b/.azure/pipelines/ci-public.yml index dbc19a25b103..32c706e48213 100644 --- a/.azure/pipelines/ci-public.yml +++ b/.azure/pipelines/ci-public.yml @@ -366,6 +366,7 @@ stages: --ci --arch arm64 --pack + --build-installers --all --no-build-java -p:OnlyPackPlatformSpecificPackages=true diff --git a/.azure/pipelines/ci.yml b/.azure/pipelines/ci.yml index e2650723b796..5b17f5ecc48b 100644 --- a/.azure/pipelines/ci.yml +++ b/.azure/pipelines/ci.yml @@ -437,6 +437,7 @@ extends: --arch arm64 --pack --all + --build-installers --no-build-java -p:OnlyPackPlatformSpecificPackages=true $(_BuildArgs) From fda0c2b333f8211556ccaae55ce7e723ee149f14 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Thu, 5 Dec 2024 14:11:26 -0800 Subject: [PATCH 50/50] Set the InstallerPackageDescription property to also set the description for installers (after https://github.com/dotnet/arcade/pull/15308 flows) --- src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj | 1 + .../App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj | 1 + 2 files changed, 2 insertions(+) diff --git a/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj b/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj index 9747468a2efe..ef6d7d5cfcbf 100644 --- a/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj +++ b/src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj @@ -18,6 +18,7 @@ ASP.NET Core Targeting Pack $(SharedFxDescription) + $(SharedFxDescription) $(RepoRoot)LICENSE.txt $(AspNetCoreMajorVersion) $(AspNetCoreMinorVersion) diff --git a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj index 852a7a187dc5..ce65e1b25c2a 100644 --- a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj +++ b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj @@ -25,6 +25,7 @@ true Microsoft ASP.NET Core $(SharedFxDescription) + $(SharedFxDescription) $(RepoRoot)LICENSE.txt $(AspNetCoreMajorVersion) $(AspNetCoreMinorVersion)