Linux native installer updates: DEB and RPM (#1122)

Adding targeting packs to native Linux installers.
 * Re-enable RPM and DEB installation testing.
This commit is contained in:
John Beisner 2019-04-01 14:24:56 -07:00 committed by GitHub
parent 4d53239e13
commit 10224a8d3b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 145 additions and 75 deletions

View file

@ -33,6 +33,7 @@
<PropertyGroup>
<RuntimeDepsPackageVersion>$(MicrosoftNETCoreAppMajorMinorVersion)</RuntimeDepsPackageVersion>
<RuntimeDepsPackageName>dotnet-runtime-deps-$(RuntimeDepsPackageVersion)</RuntimeDepsPackageName>
<DownloadedRuntimeDepsInstallerFile>$(DownloadsFolder)$(DownloadedRuntimeDepsInstallerFileName)</DownloadedRuntimeDepsInstallerFile>
<SdkDebianPackageVersion>$(MajorMinorVersion)</SdkDebianPackageVersion>
<SdkDebianPackageName>dotnet-sdk-$(SdkDebianPackageVersion)</SdkDebianPackageName>
<SharedFxDebianPackageFileVersion>$(MicrosoftNETCoreAppPackageVersion)</SharedFxDebianPackageFileVersion>
@ -41,22 +42,35 @@
<SharedFxDebianPackageFileName>$(SharedFxDebianPackageFileName.ToLower())</SharedFxDebianPackageFileName>
<SharedFxDebianPackageName>dotnet-runtime-$(SharedFxDebianPackageVersion)</SharedFxDebianPackageName>
<SharedFxDebianPackageName>$(SharedFxDebianPackageName.ToLower())</SharedFxDebianPackageName>
<DownloadedSharedFrameworkInstallerFile>$(DownloadsFolder)$(DownloadedSharedFrameworkInstallerFileName)</DownloadedSharedFrameworkInstallerFile>
<NetCoreAppTargetingPackDebianPackageFileName>dotnet-targeting-pack-$(SharedFxDebianPackageFileVersion)</NetCoreAppTargetingPackDebianPackageFileName>
<NetCoreAppTargetingPackDebianPackageFileName>$(NetCoreAppTargetingPackDebianPackageFileName.ToLower())</NetCoreAppTargetingPackDebianPackageFileName>
<NetCoreAppTargetingPackDebianPackageName>dotnet-targeting-pack-$(SharedFxDebianPackageVersion)</NetCoreAppTargetingPackDebianPackageName>
<NetCoreAppTargetingPackDebianPackageName>$(NetCoreAppTargetingPackDebianPackageName.ToLower())</NetCoreAppTargetingPackDebianPackageName>
<DownloadedNetCoreAppTargetingPackInstallerFile>$(DownloadsFolder)$(DownloadedNetCoreAppTargetingPackInstallerFileName)</DownloadedNetCoreAppTargetingPackInstallerFile>
<HostFxrDebianPackageFileName>dotnet-hostfxr-$(HostFxrVersion)</HostFxrDebianPackageFileName>
<HostFxrDebianPackageFileName>$(HostFxrDebianPackageFileName.ToLower())</HostFxrDebianPackageFileName>
<HostFxrDebianPackageName>dotnet-hostfxr-$(HostFxrMajorMinorVersion)</HostFxrDebianPackageName>
<HostFxrDebianPackageName>$(HostFxrDebianPackageName.ToLower())</HostFxrDebianPackageName>
<HostDebianPackageName>dotnet-host</HostDebianPackageName>
<DownloadedHostFxrInstallerFile>$(DownloadsFolder)$(DownloadedHostFxrInstallerFileName)</DownloadedHostFxrInstallerFile>
<SharedHostDebianPackageName>dotnet-host</SharedHostDebianPackageName>
<DownloadedSharedHostInstallerFile>$(DownloadsFolder)$(DownloadedSharedHostInstallerFileName)</DownloadedSharedHostInstallerFile>
<AspNetCoreSharedFxDebianPackageFileName>aspnetcore-runtime-$(AspNetCoreVersion)</AspNetCoreSharedFxDebianPackageFileName>
<AspNetCoreSharedFxDebianPackageFileName>$(AspNetCoreSharedFxDebianPackageFileName.ToLower())</AspNetCoreSharedFxDebianPackageFileName>
<AspNetCoreSharedFxDebianPackageName>aspnetcore-runtime-$(AspNetCoreMajorMinorVersion)</AspNetCoreSharedFxDebianPackageName>
<AspNetCoreSharedFxDebianPackageName>$(AspNetCoreSharedFxDebianPackageName.ToLower())</AspNetCoreSharedFxDebianPackageName>
</PropertyGroup>
<DownloadedAspNetCoreSharedFxInstallerFile>$(DownloadsFolder)$(DownloadedAspNetCoreSharedFxInstallerFileName)</DownloadedAspNetCoreSharedFxInstallerFile>
<AspNetTargetingPackDebianPackageFileName>aspnetcore-targeting-pack-$(AspNetCoreVersion)</AspNetTargetingPackDebianPackageFileName>
<AspNetTargetingPackDebianPackageFileName>$(AspNetTargetingPackDebianPackageFileName.ToLower())</AspNetTargetingPackDebianPackageFileName>
<AspNetTargetingPackDebianPackageName>aspnetcore-targeting-pack-$(AspNetCoreMajorMinorVersion)</AspNetTargetingPackDebianPackageName>
<AspNetTargetingPackDebianPackageName>$(AspNetTargetingPackDebianPackageName.ToLower())</AspNetTargetingPackDebianPackageName>
<DownloadedAspNetTargetingPackInstallerFile>$(DownloadsFolder)$(DownloadedAspNetTargetingPackInstallerFileName)</DownloadedAspNetTargetingPackInstallerFile>
</PropertyGroup>
<!-- Inputs -->
<PropertyGroup>
<!-- Need to acquire manpage files from CLI repo: https://github.com/dotnet/cli/issues/10266 -->
<ManpagesDirectory>$(RepoRoot)Documentation/manpages</ManpagesDirectory>
<EndToEndTestProject>$(RepoRoot)test/EndToEnd/EndToEnd.Tests.csproj</EndToEndTestProject>
<CLISdkRoot>$(RedistLayoutPath)sdk/</CLISdkRoot>
</PropertyGroup>
@ -103,6 +117,12 @@
<DebianConfigTokenValues Include="%ASPNETCORE_SHAREDFX_DEBIAN_PACKAGE_NAME%">
<ReplacementString>$(AspNetCoreSharedFxDebianPackageName)</ReplacementString>
</DebianConfigTokenValues>
<DebianConfigTokenValues Include="%NETCOREAPP_TARGETING_PACK_DEBIAN_PACKAGE_NAME%">
<ReplacementString>$(NetCoreAppTargetingPackDebianPackageName)</ReplacementString>
</DebianConfigTokenValues>
<DebianConfigTokenValues Include="%ASPNET_TARGETING_PACK_DEBIAN_PACKAGE_NAME%">
<ReplacementString>$(AspNetTargetingPackDebianPackageName)</ReplacementString>
</DebianConfigTokenValues>
<DebianConfigTokenValues Include="%SHARED_FRAMEWORK_DEBIAN_PACKAGE_ADDITIONAL_DEPENDENCY%"
Condition="'$(IncludeAdditionalSharedFrameworks)' == 'true'">
<ReplacementString>
@ -120,7 +140,7 @@
<DebianConfigTokenValues Include="%CLI_SDK_BRAND_NAME%">
<ReplacementString>$(SdkBrandName)</ReplacementString>
</DebianConfigTokenValues>
<DebianConfigTokenValues Include="%SHARED_FRAMEWORK_DEBIAN_PACKAGE_VERSIONS%">
<DebianConfigTokenValues Include="%SHARED_FRAMEWORK_DEBIAN_PACKAGE_VERSION%">
<ReplacementString>$(MicrosoftNETCoreAppPackageVersionWithTilda)</ReplacementString>
</DebianConfigTokenValues>
<DebianConfigTokenValues Include="%ASPNETCORE_SHAREDFX_DEBIAN_PACKAGE_VERSION%">
@ -133,10 +153,10 @@
</ItemGroup>
<ItemGroup>
<!--<TestSdkDebTaskEnvironmentVariables Include="PATH=$(DebianInstalledDirectory)$(PathListSeparator)$(PATH)" />
<TestSdkDebTaskEnvironmentVariables Include="PATH=$(DebianInstalledDirectory)$(PathListSeparator)$(PATH)" />
<TestSdkDebTaskEnvironmentVariables Include="TEST_ARTIFACTS=$(TestArtifactsDir)" />
<TestSdkDebTaskEnvironmentVariables Include="TEST_PACKAGES=$(TestPackagesDir)" />
<TestSdkDebTaskEnvironmentVariables Include="PreviousStageProps=$(NextStagePropsPath)" />-->
<TestSdkDebTaskEnvironmentVariables Include="PreviousStageProps=$(NextStagePropsPath)" />
<!-- Consumed By Publish -->
<GeneratedInstallers Include="$(SdkDebInstallerFile)" />
@ -149,12 +169,11 @@
DependsOnTargets="GetCurrentRuntimeInformation;
GenerateDebsInner"/>
<!-- Re-enable "TestSdkDeb" when the following issue is resolved: https://github.com/dotnet/cli/issues/9672 -->
<Target Name="GenerateDebsInner"
DependsOnTargets="SetupDebProps;
TestDebuild;
BuildSdkDeb"
BuildSdkDeb;
TestSdkDeb"
Condition=" '$(IsDebianBaseDistro)' == 'True' "
Outputs="@(GeneratedInstallers)"/>
@ -192,12 +211,13 @@
Inputs="@(CLISdkFiles)"
Outputs="$(SdkDebInstallerFile)" >
<!-- Install Shared Framework Packages -->
<Exec Command="sudo dpkg -i $(DownloadsFolder)$(DownloadedRuntimeDepsInstallerFileName)" />
<Exec Command="sudo dpkg -i $(DownloadsFolder)$(DownloadedSharedHostInstallerFileName)" />
<Exec Command="sudo dpkg -i $(DownloadsFolder)$(DownloadedHostFxrInstallerFileName)" />
<Exec Command="sudo dpkg -i $(DownloadsFolder)$(DownloadedSharedFrameworkInstallerFileName)" />
<Exec Command="sudo dpkg $(InstallAspNetCoreSharedFxArgs) -i $(DownloadsFolder)$(DownloadedAspNetCoreSharedFxInstallerFileName)" />
<Exec Command="sudo dpkg -i $(DownloadedNetCoreAppTargetingPackInstallerFile)" />
<Exec Command="sudo dpkg -i $(DownloadedAspNetTargetingPackInstallerFile)" />
<Exec Command="sudo dpkg -i $(DownloadedRuntimeDepsInstallerFile)" />
<Exec Command="sudo dpkg -i $(DownloadedSharedHostInstallerFile)" />
<Exec Command="sudo dpkg -i $(DownloadedHostFxrInstallerFile)" />
<Exec Command="sudo dpkg -i $(DownloadedSharedFrameworkInstallerFile)" />
<Exec Command="sudo dpkg $(InstallAspNetCoreSharedFxArgs) -i $(DownloadedAspNetCoreSharedFxInstallerFile)" />
<!-- Create layout: Binaries -->
<Copy
@ -266,7 +286,11 @@
<SetupDebPackageToRemove Include="$(SharedFxDebianPackageFileName)" />
<SetupDebPackageToRemove Include="$(HostFxrDebianPackageName)" />
<SetupDebPackageToRemove Include="$(HostFxrDebianPackageFileName)" />
<SetupDebPackageToRemove Include="$(HostDebianPackageName)" />
<SetupDebPackageToRemove Include="$(SharedHostDebianPackageName)" />
<SetupDebPackageToRemove Include="$(AspNetTargetingPackDebianPackageName)" />
<SetupDebPackageToRemove Include="$(AspNetTargetingPackDebianPackageFileName)" />
<SetupDebPackageToRemove Include="$(NetCoreAppTargetingPackDebianPackageName)" />
<SetupDebPackageToRemove Include="$(NetCoreAppTargetingPackDebianPackageFileName)" />
<SetupDebPackageToRemove Include="$(RuntimeDepsPackageName)" />
</ItemGroup>
<!-- The following line is needed. So it won't warning dotnet folder is not empty after uninstall -->
@ -276,15 +300,22 @@
<Target Name="TestSdkDeb"
Condition=" '$(CLIBUILD_SKIP_TESTS)' != 'true' and '$(IsDebianBaseDistro)' == 'True' and '$(DebuildPresent)' == 'true' "
DependsOnTargets="RestoreTests;GetAspNetSharedFxInstallArgs"
Inputs="$(DownloadedSharedHostInstallerFile);
DependsOnTargets="GetAspNetSharedFxInstallArgs"
Inputs="$(DownloadedRuntimeDepsInstallerFile);
$(DownloadedNetCoreAppTargetingPackInstallerFile);
$(DownloadedAspNetTargetingPackInstallerFile);
$(DownloadedSharedHostInstallerFile);
$(DownloadedHostFxrInstallerFile);
$(DownloadedSharedFrameworkInstallerFile);
$(SdkDebInstallerFile);"
$(DownloadedAspNetCoreSharedFxInstallerFile);
$(SdkDebInstallerFile);
$(DebianTestResultsXmlFile);"
Outputs="$(DebianTestResultsXmlFile)" >
<!-- Install Dependencies and SDK Packages -->
<Exec Command="sudo dpkg -i $(DownloadedRuntimeDepsInstallerFile)" />
<Exec Command="sudo dpkg -i $(DownloadedNetCoreAppTargetingPackInstallerFile)" />
<Exec Command="sudo dpkg -i $(DownloadedAspNetTargetingPackInstallerFile)" />
<Exec Command="sudo dpkg -i $(DownloadedSharedHostInstallerFile)" />
<Exec Command="sudo dpkg -i $(DownloadedHostFxrInstallerFile)" />
<Exec Command="sudo dpkg -i $(DownloadedSharedFrameworkInstallerFile)" />
@ -292,14 +323,13 @@
<Exec Command="sudo dpkg -i $(SdkDebInstallerFile)" />
<!-- Run E2E -->
<!-- Run End-2-end Tests https://github.com/dotnet/core-sdk/issues/1174
<DotNetRestore ProjectPath="$(EndToEndTestProject)"
ToolPath="$(DebianInstalledDirectory)" />
<DotNetTest ProjectPath="$(EndToEndTestProject)"
EnvironmentVariables="@(TestSdkDebTaskEnvironmentVariables)"
ToolPath="$(DebianInstalledDirectory)" />
ToolPath="$(DebianInstalledDirectory)" />-->
<!-- Clean up Packages -->
<!-- The following line is needed. So it won't warning dotnet folder is not empty after uninstall -->
<Exec Command="sudo rm -rf /usr/share/dotnet/sdk/NuGetFallbackFolder" />
@ -309,7 +339,9 @@
<TestSdkDebPackageToRemove Include="$(AspNetCoreSharedFxDebianPackageName)" />
<TestSdkDebPackageToRemove Include="$(SharedFxDebianPackageName)" />
<TestSdkDebPackageToRemove Include="$(HostFxrDebianPackageName)" />
<TestSdkDebPackageToRemove Include="$(HostDebianPackageName)" />
<TestSdkDebPackageToRemove Include="$(SharedHostDebianPackageName)" />
<TestSdkDebPackageToRemove Include="$(AspNetTargetingPackDebianPackageName)" />
<TestSdkDebPackageToRemove Include="$(NetCoreAppTargetingPackDebianPackageName)" />
<TestSdkDebPackageToRemove Include="$(RuntimeDepsPackageName)"/>
</ItemGroup>
<!-- If package installed remove it -->

View file

@ -5,7 +5,7 @@
</PropertyGroup>
<Target Name="GenerateInstallers"
AfterTargets="Pack"
BeforeTargets="Pack"
DependsOnTargets="$(_BuildUnlessNoBuild);
GetCurrentRuntimeInformation;
GenerateMsis;

View file

@ -29,8 +29,8 @@
<DownloadedHostFxrInstallerFileName Condition=" '$(InstallerExtension)' != '' ">dotnet-hostfxr$(InstallerStartSuffix)-$(HostFxrVersion)-$(SharedFrameworkInstallerFileRid)$(InstallerExtension)</DownloadedHostFxrInstallerFileName>
<DownloadedSharedFrameworkInstallerFileName Condition=" '$(InstallerExtension)' != '' ">dotnet-runtime$(InstallerStartSuffix)-$(MicrosoftNETCoreAppPackageVersion)-$(SharedFrameworkInstallerFileRid)$(InstallerExtension)</DownloadedSharedFrameworkInstallerFileName>
<DownloadedWinFormsAndWpfSharedFrameworkInstallerFileName Condition=" '$(InstallerExtension)' != '' ">dotnet-extension-$(MicrosoftWindowsDesktopPackageVersion)-$(SharedFrameworkInstallerFileRid)$(InstallerExtension)</DownloadedWinFormsAndWpfSharedFrameworkInstallerFileName>
<DownloadedNetCoreAppTargetingPackInstallerFileName Condition=" '$(InstallerExtension)' != '' ">dotnet-targeting-pack$(InstallerStartSuffix)-$(NetCoreAppTargetingPackVersion)-$(SharedFrameworkInstallerFileRid)$(InstallerExtension)</DownloadedNetCoreAppTargetingPackInstallerFileName>
<DownloadedWindowsDesktopTargetingPackInstallerFileName Condition=" '$(InstallerExtension)' != '' ">windowsdesktop-targeting-pack$(InstallerStartSuffix)-$(WindowsDesktopTargetingPackVersion)-$(SharedFrameworkInstallerFileRid)$(InstallerExtension)</DownloadedWindowsDesktopTargetingPackInstallerFileName>
<DownloadedNetCoreAppTargetingPackInstallerFileName Condition=" '$(InstallerExtension)' != '' ">dotnet-targeting-pack-$(NetCoreAppTargetingPackVersion)-$(SharedFrameworkInstallerFileRid)$(InstallerExtension)</DownloadedNetCoreAppTargetingPackInstallerFileName>
<DownloadedWindowsDesktopTargetingPackInstallerFileName Condition=" '$(InstallerExtension)' != '' ">windowsdesktop-targeting-pack-$(WindowsDesktopTargetingPackVersion)-$(SharedFrameworkInstallerFileRid)$(InstallerExtension)</DownloadedWindowsDesktopTargetingPackInstallerFileName>
<!-- Use the portable "linux-x64" Rid when downloading Linux shared framework compressed file. -->
<SharedFrameworkRid>$(CoreSetupRid)</SharedFrameworkRid>
@ -46,7 +46,10 @@
<DownloadedAspNetCoreSharedFxInstallerFileName Condition=" '$(InstallerExtension)' != '' AND '$(HostOSName)' != 'osx' ">aspnetcore-runtime-$(AspNetCoreVersion)-$(AspNetCoreSharedFxInstallerRid)$(InstallerExtension)</DownloadedAspNetCoreSharedFxInstallerFileName>
<!-- Note: we use the "-internal" archives and installers that contain only the aspnetcore shared framework, and shouldn't overlap with Microsoft.NETCore.App. -->
<DownloadedAspNetCoreSharedFxInstallerFileName Condition=" '$(InstallerExtension)' == '.msi' ">aspnetcore-runtime-internal-$(AspNetCoreVersion)-$(AspNetCoreSharedFxInstallerRid).wixlib</DownloadedAspNetCoreSharedFxInstallerFileName>
<DownloadedAspNetTargetingPackInstallerFileName Condition=" '$(InstallerExtension)' != '' ">aspnetcore-targeting-pack$(InstallerStartSuffix)-$(AspNetTargetingPackVersion)-$(AspNetCoreSharedFxInstallerRid)$(InstallerExtension)</DownloadedAspNetTargetingPackInstallerFileName>
<DownloadedAspNetTargetingPackInstallerFileName Condition=" '$(InstallerExtension)' != '' ">aspnetcore-targeting-pack-$(AspNetTargetingPackVersion)-$(AspNetCoreSharedFxInstallerRid)$(InstallerExtension)</DownloadedAspNetTargetingPackInstallerFileName>
<!-- The AspNetTargetingPackInstallerFileName is misnamed for DEB types at this time.
https://github.com/aspnet/AspNetCore/issues/8835 when resolved, remove the 'IsDebianBaseDistro' special contitioned line below. -->
<DownloadedAspNetTargetingPackInstallerFileName Condition=" '$(IsDebianBaseDistro)' == 'true' ">aspnetcore-targeting-pack-$(AspNetTargetingPackVersion)$(InstallerExtension)</DownloadedAspNetTargetingPackInstallerFileName>
<AspNetCoreSharedFxArchiveFileName>aspnetcore-runtime-internal-$(AspNetCoreVersion)-$(AspNetCoreSharedFxArchiveRid)$(ArchiveExtension)</AspNetCoreSharedFxArchiveFileName>
<WinFormsAndWpfSharedFxArchiveFileName>dotnet-extension-$(MicrosoftWindowsDesktopPackageVersion)-$(Architecture)$(ArchiveExtension)</WinFormsAndWpfSharedFxArchiveFileName>
@ -134,13 +137,13 @@
</BundledInstallerComponent>
<BundledInstallerComponent Include="DownloadedNetCoreAppTargetingPackInstallerFile"
Condition="'$(InstallerExtension)' == '.msi' And '$(SkipBuildingInstallers)' != 'true' And !$(Architecture.StartsWith('arm'))">
Condition="'$(SkipBuildingInstallers)' != 'true' And '$(InstallerExtension)' != '' And !$(Architecture.StartsWith('arm'))">
<BaseUrl>$(CoreSetupRootUrl)$(NetCoreAppTargetingPackVersion)</BaseUrl>
<DownloadFileName>$(DownloadedNetCoreAppTargetingPackInstallerFileName)</DownloadFileName>
<AccessToken>$(CoreSetupBlobAccessTokenParam)</AccessToken>
</BundledInstallerComponent>
<BundledInstallerComponent Include="DownloadedWindowsDesktopTargetingPackInstallerFileName"
<BundledInstallerComponent Include="DownloadedWindowsDesktopTargetingPackInstallerFile"
Condition="'$(InstallerExtension)' == '.msi' And '$(SkipBuildingInstallers)' != 'true' And !$(Architecture.StartsWith('arm'))">
<BaseUrl>$(CoreSetupRootUrl)$(WindowsDesktopTargetingPackVersion)</BaseUrl>
<DownloadFileName>$(DownloadedWindowsDesktopTargetingPackInstallerFileName)</DownloadFileName>
@ -163,8 +166,10 @@
<RelativeLayoutPath></RelativeLayoutPath>
</BundledLayoutComponent>
<!-- The AspNetTargetingPackInstallerFile for PKG types does not exist at this time.
https://github.com/aspnet/AspNetCore/issues/8806 when resolved, change the 'Condition' below. -->
<BundledInstallerComponent Include="DownloadedAspNetTargetingPackInstallerFile"
Condition="'$(InstallerExtension)' == '.msi' And '$(SkipBuildingInstallers)' != 'true' And !$(Architecture.StartsWith('arm'))">
Condition="'$(InstallerExtension)' != '.pkg' And '$(SkipBuildingInstallers)' != 'true' And '$(InstallerExtension)' != '' And !$(Architecture.StartsWith('arm'))">
<BaseUrl>$(AspNetCoreSharedFxRootUrl)$(AspNetTargetingPackVersion)</BaseUrl>
<DownloadFileName>$(DownloadedAspNetTargetingPackInstallerFileName)</DownloadFileName>
<AccessToken>$(CoreSetupBlobAccessTokenParam)</AccessToken>

View file

@ -12,9 +12,8 @@
DependsOnTargets="GetCurrentRuntimeInformation;
GenerateRpmsInner" />
<!-- Re-enable "TestSdkRpm" when the following issue is resolved: https://github.com/dotnet/cli/issues/9672 -->
<Target Name="GenerateRpmsInner"
DependsOnTargets="TestFPMTool;BuildRpms"
DependsOnTargets="TestFPMTool;BuildRpms;TestSdkRpm"
Condition=" '$(IsRPMBasedDistro)' == 'True' "
Outputs="@(GeneratedInstallers)"/>
@ -71,18 +70,24 @@
<!-- Replace config json variables -->
<ItemGroup>
<SDKTokenValue Include="%SHARED_HOST_RPM_VERSION%">
<SDKTokenValue Include="%SHARED_FRAMEWORK_RPM_PACKAGE_VERSION%">
<ReplacementString>$(MicrosoftNETCoreAppMajorMinorPatchVersion)</ReplacementString>
</SDKTokenValue>
<SDKTokenValue Include="%ASPNETCORE_SHAREDFX_RPM_PACKAGE_NAME%">
<ReplacementString>$(AspNetCoreSharedFxRpmPackageName)</ReplacementString>
</SDKTokenValue>
<SDKTokenValue Include="%ASPNETCORE_SHAREDFX_RPM_PACKAGE_VERSION%">
<ReplacementString>$(AspNetCoreMajorMinorPatchVersion)</ReplacementString>
</SDKTokenValue>
<SDKTokenValue Include="%SHARED_HOST_RPM_NAME%">
<SDKTokenValue Include="%SHARED_FRAMEWORK_RPM_PACKAGE_NAME%">
<ReplacementString>$(SharedFxRpmPackageName)</ReplacementString>
</SDKTokenValue>
<SDKTokenValue Include="%NETCOREAPP_TARGETING_PACK_RPM_PACKAGE_NAME%">
<ReplacementString>$(NetCoreAppTargetingPackRpmPackageName)</ReplacementString>
</SDKTokenValue>
<SDKTokenValue Include="%ASPNETCORE_SHAREDFX_RPM_PACKAGE_NAME%">
<ReplacementString>$(AspNetCoreSharedFxRpmPackageName)</ReplacementString>
</SDKTokenValue>
<SDKTokenValue Include="%ASPNET_TARGETING_PACK_RPM_PACKAGE_NAME%">
<ReplacementString>$(AspNetTargetingPackRpmPackageName)</ReplacementString>
</SDKTokenValue>
<SDKTokenValue Include="%SDK_NUGET_VERSION%">
<ReplacementString>$(SdkVersion)</ReplacementString>
</SDKTokenValue>
@ -100,9 +105,9 @@
<ItemGroup>
<TestSdkRpmTaskEnvironmentVariables Include="PATH=$(RpmInstalledDirectory)$(PathListSeparator)$(PATH)" />
<!--<TestSdkRpmTaskEnvironmentVariables Include="TEST_ARTIFACTS=$(TestArtifactsDir)" />
<TestSdkRpmTaskEnvironmentVariables Include="TEST_ARTIFACTS=$(TestArtifactsDir)" />
<TestSdkRpmTaskEnvironmentVariables Include="TEST_PACKAGES=$(TestPackagesDir)" />
<TestSdkRpmTaskEnvironmentVariables Include="PreviousStageProps=$(NextStagePropsPath)" />-->
<TestSdkRpmTaskEnvironmentVariables Include="PreviousStageProps=$(NextStagePropsPath)" />
<!-- Consumed By Publish -->
<!--<GeneratedInstallers Include="$(SdkRPMInstallerFile)" />-->
@ -152,18 +157,16 @@
<PropertyGroup>
<SdkRpmPackageVersion>$(MajorMinorVersion)</SdkRpmPackageVersion>
<SdkRpmPackageName>$(ArtifactNameCombinedHostHostFxrFrameworkSdk)-$(SdkRpmPackageVersion)</SdkRpmPackageName>
<RuntimeDepsPackageVersion>$(MicrosoftNETCoreAppPackageVersion)</RuntimeDepsPackageVersion>
<RuntimeDepsPackageFileName>dotnet-runtime-deps-$(RuntimeDepsPackageVersion)</RuntimeDepsPackageFileName>
<RpmPackageVersion>$(SdkVersion)</RpmPackageVersion>
<InputRoot>$(RedistLayoutPath)sdk/</InputRoot>
<SdkRPMInstallerFile>$(ArtifactsShippingPackagesDir)$(DistroSpecificArtifactNameWithVersionCombinedHostHostFxrFrameworkSdk)$(InstallerExtension)</SdkRPMInstallerFile>
<RpmFile>$(SdkRPMInstallerFile)</RpmFile>
<!-- Need to acquire manpage files from CLI repo: https://github.com/dotnet/cli/issues/10266 -->
<ManPagesDir>$(RepoRoot)/Documentation/manpages</ManPagesDir>
<EndToEndTestProject>$(RepoRoot)/test/EndToEnd/EndToEnd.csproj</EndToEndTestProject>
<ConfigJsonFile>$(MSBuildThisFileDirectory)packaging/rpm/dotnet-config.json</ConfigJsonFile>
<RpmIntermediatesDir>$(IntermediateOutputPath)$(SdkRpmPackageName)/$(RpmPackageVersion)</RpmIntermediatesDir>
<RpmTestResultsXmlFile>$(RpmIntermediatesDir)/debian-testResults.xml</RpmTestResultsXmlFile>
<RpmTestResultsXmlFile>$(RpmIntermediatesDir)/rpm-testResults.xml</RpmTestResultsXmlFile>
<RpmInstalledDirectory>/usr/share/dotnet</RpmInstalledDirectory>
</PropertyGroup>
@ -177,27 +180,41 @@
</PropertyGroup>
<PropertyGroup>
<SharedFxRpmPackageVersion>$(MicrosoftNETCoreAppMajorMinorVersion)</SharedFxRpmPackageVersion>
<SharedFxRpmPackageFileVersion>$(MicrosoftNETCoreAppPackageVersion)</SharedFxRpmPackageFileVersion>
<SharedFxRpmPackageName>dotnet-runtime-$(SharedFxRpmPackageVersion)</SharedFxRpmPackageName>
<SharedFxRpmPackageName>$(SharedFxRpmPackageName.ToLower())</SharedFxRpmPackageName>
<SharedFxRpmPackageFileName>dotnet-runtime-$(SharedFxRpmPackageFileVersion)</SharedFxRpmPackageFileName>
<SharedFxRpmPackageFileName>$(SharedFxRpmPackageFileName.ToLower())</SharedFxRpmPackageFileName>
<HostFxrRpmPackageVersion>$(HostFxrVersion)</HostFxrRpmPackageVersion>
<HostFxrRpmPackageName>dotnet-hostfxr-$(HostFxrRpmPackageVersion)</HostFxrRpmPackageName>
<NetCoreAppTargetingPackRpmPackageName>dotnet-targeting-pack-$(SharedFxRpmPackageVersion)</NetCoreAppTargetingPackRpmPackageName>
<NetCoreAppTargetingPackRpmPackageName>$(NetCoreAppTargetingPackRpmPackageName.ToLower())</NetCoreAppTargetingPackRpmPackageName>
<NetCoreAppTargetingPackRpmPackageFileName>dotnet-targeting-pack-$(SharedFxRpmPackageFileVersion)</NetCoreAppTargetingPackRpmPackageFileName>
<NetCoreAppTargetingPackRpmPackageFileName>$(NetCoreAppTargetingPackRpmPackageFileName.ToLower())</NetCoreAppTargetingPackRpmPackageFileName>
<HostFxrRpmPackageName>dotnet-hostfxr-$(SharedFxRpmPackageVersion)</HostFxrRpmPackageName>
<HostFxrRpmPackageName>$(HostFxrRpmPackageName.ToLower())</HostFxrRpmPackageName>
<HostRpmPackageName>dotnet-host</HostRpmPackageName>
<RuntimeDepsPackageName>dotnet-runtime-deps-$(SharedFxRpmPackageVersion)</RuntimeDepsPackageName>
<RuntimeDepsPackageName>$(RuntimeDepsPackageName.ToLower())</RuntimeDepsPackageName>
<SharedHostRpmPackageName>dotnet-host</SharedHostRpmPackageName>
<AspNetCoreSharedFxRpmPackageName>aspnetcore-runtime-$(AspNetCoreMajorMinorVersion)</AspNetCoreSharedFxRpmPackageName>
<AspNetCoreSharedFxRpmPackageName>$(AspNetCoreSharedFxRpmPackageName.ToLower())</AspNetCoreSharedFxRpmPackageName>
<AspNetCoreSharedFxRpmPackageFileName>aspnetcore-runtime-$(AspNetCoreVersion)</AspNetCoreSharedFxRpmPackageFileName>
<AspNetCoreSharedFxRpmPackageFileName>$(AspNetCoreSharedFxRpmPackageFileName.ToLower())</AspNetCoreSharedFxRpmPackageFileName>
<AspNetTargetingPackRpmPackageName>aspnetcore-targeting-pack-$(AspNetCoreMajorMinorVersion)</AspNetTargetingPackRpmPackageName>
<AspNetTargetingPackRpmPackageName>$(AspNetTargetingPackRpmPackageName.ToLower())</AspNetTargetingPackRpmPackageName>
<AspNetTargetingPackRpmPackageFileName>aspnetcore-targeting-pack-$(AspNetCoreVersion)</AspNetTargetingPackRpmPackageFileName>
<AspNetTargetingPackRpmPackageFileName>$(AspNetTargetingPackRpmPackageFileName.ToLower())</AspNetTargetingPackRpmPackageFileName>
<AfterInstallHostScriptTemplateFile>$(ScriptsDir)/$(AfterInstallHostScriptName)</AfterInstallHostScriptTemplateFile>
<AfterInstallHostScriptDestinationFile>$(RpmLayoutScripts)/$(AfterInstallHostScriptName)</AfterInstallHostScriptDestinationFile>
</PropertyGroup>
<PropertyGroup>
<EndToEndTestProject>$(RepoRoot)/test/EndToEnd/EndToEnd.csproj</EndToEndTestProject>
<DownloadedNetCoreAppTargetingPackInstallerFile>$(DownloadsFolder)$(DownloadedNetCoreAppTargetingPackInstallerFileName)</DownloadedNetCoreAppTargetingPackInstallerFile>
<DownloadedAspNetTargetingPackInstallerFile>$(DownloadsFolder)$(DownloadedAspNetTargetingPackInstallerFileName)</DownloadedAspNetTargetingPackInstallerFile>
<DownloadedRuntimeDepsInstallerFile>$(DownloadsFolder)$(DownloadedRuntimeDepsInstallerFileName)</DownloadedRuntimeDepsInstallerFile>
<DownloadedSharedHostInstallerFile>$(DownloadsFolder)$(DownloadedSharedHostInstallerFileName)</DownloadedSharedHostInstallerFile>
<DownloadedHostFxrInstallerFile>$(DownloadsFolder)$(DownloadedHostFxrInstallerFileName)</DownloadedHostFxrInstallerFile>
<DownloadedSharedFrameworkInstallerFile>$(DownloadsFolder)$(DownloadedSharedFrameworkInstallerFileName)</DownloadedSharedFrameworkInstallerFile>
<DownloadedAspNetCoreSharedFxInstallerFile>$(DownloadsFolder)$(DownloadedAspNetCoreSharedFxInstallerFileName)</DownloadedAspNetCoreSharedFxInstallerFile>
</PropertyGroup>
</Target>
@ -222,39 +239,45 @@
</Target>
<Target Name="TestSdkRpm"
DependsOnTargets="RestoreTests"
Condition=" '$(CLIBUILD_SKIP_TESTS)' != 'true' and '$(IsRPMBasedDistro)' == 'True' and '$(FPMPresent)' == 'True' "
Inputs="$(DownloadedSharedHostInstallerFile);
$(DownloadedHostFxrInstallerFile);
$(DownloadedSharedFrameworkInstallerFile);
$(DownloadedAspNetCoreSharedFxInstallerFile);
$(RpmTestResultsXmlFile);"
Inputs="$(DownloadedNetCoreAppTargetingPackInstallerFile);
$(DownloadedAspNetTargetingPackInstallerFile);
$(DownloadedRuntimeDepsInstallerFile);
$(DownloadedSharedHostInstallerFile);
$(DownloadedHostFxrInstallerFile);
$(DownloadedSharedFrameworkInstallerFile);
$(DownloadedAspNetCoreSharedFxInstallerFile);
$(SdkRPMInstallerFile);
$(RpmTestResultsXmlFile);"
Outputs="$(RpmTestResultsXmlFile)" >
<!-- Install Dependencies and SDK Packages -->
<Exec Command="sudo yum -y install $(DownloadedRuntimeDepsInstallerFile)" />
<Exec Command="sudo yum -y install $(DownloadedSharedHostInstallerFile)" />
<Exec Command="sudo yum -y install $(DownloadedHostFxrInstallerFile)" />
<Exec Command="sudo yum -y install $(DownloadedSharedFrameworkInstallerFile)" />
<Exec Command="sudo rpm -iv $(DownloadedRuntimeDepsInstallerFile)" />
<Exec Command="sudo rpm -iv $(DownloadedNetCoreAppTargetingPackInstallerFile)" />
<Exec Command="sudo rpm -iv $(DownloadedAspNetTargetingPackInstallerFile)" />
<Exec Command="sudo rpm -iv $(DownloadedSharedHostInstallerFile)" />
<Exec Command="sudo rpm -iv $(DownloadedHostFxrInstallerFile)" />
<Exec Command="sudo rpm -iv $(DownloadedSharedFrameworkInstallerFile)" />
<!-- Ignore dependencies, which may have an incoherent dependency on dotnet-runtime -->
<Exec Command="sudo rpm --install --nodeps $(DownloadedAspNetCoreSharedFxInstallerFile)" />
<Exec Command="sudo rpm -iv --nodeps $(DownloadedAspNetCoreSharedFxInstallerFile)" />
<Exec Command="sudo yum -y install $(SdkRPMInstallerFile)" />
<Exec Command="sudo rpm -iv $(SdkRPMInstallerFile)" />
<!-- Run Tests -->
<!-- Run End-2-end Tests https://github.com/dotnet/core-sdk/issues/1174
<DotNetRestore ProjectPath="$(EndToEndTestProject)"
ToolPath="$(RpmInstalledDirectory)" />
<DotNetTest ProjectPath="$(EndToEndTestProject)"
EnvironmentVariables="@(TestSdkRpmTaskEnvironmentVariables)"
ToolPath="$(RpmInstalledDirectory)" />
ToolPath="$(RpmInstalledDirectory)" />-->
<!-- Clean up Packages -->
<Exec Command="sudo yum remove -y $(SdkRpmPackageName)" />
<Exec Command="sudo yum remove -y $(AspNetCoreSharedFxRpmPackageFileName)" />
<Exec Command="sudo yum remove -y $(SharedFxRpmPackageFileName)" />
<Exec Command="sudo yum remove -y $(HostFxrRpmPackageName)" />
<Exec Command="sudo yum remove -y $(HostRpmPackageName)" />
<Exec Command="sudo yum remove -y $(RuntimeDepsPackageFileName)" />
<Exec Command="sudo rpm -ev --nodeps $(SdkRpmPackageName)" />
<Exec Command="sudo rpm -ev --nodeps $(AspNetCoreSharedFxRpmPackageName)" />
<Exec Command="sudo rpm -ev --nodeps $(SharedFxRpmPackageName)" />
<Exec Command="sudo rpm -ev --nodeps $(HostFxrRpmPackageName)" />
<Exec Command="sudo rpm -ev --nodeps $(SharedHostRpmPackageName)" />
<Exec Command="sudo rpm -ev --nodeps $(AspNetTargetingPackRpmPackageName)" />
<Exec Command="sudo rpm -ev --nodeps $(NetCoreAppTargetingPackRpmPackageName)" />
<Exec Command="sudo rpm -ev --nodeps $(RuntimeDepsPackageName)" />
</Target>
</Project>

View file

@ -29,7 +29,9 @@
},
"debian_dependencies":{
"%SHARED_FRAMEWORK_DEBIAN_PACKAGE_NAME%" : { "package_version": "%SHARED_FRAMEWORK_DEBIAN_PACKAGE_VERSIONS%" }%SHARED_FRAMEWORK_DEBIAN_PACKAGE_ADDITIONAL_DEPENDENCY%,
"%ASPNETCORE_SHAREDFX_DEBIAN_PACKAGE_NAME%": { "package_version": "%ASPNETCORE_SHAREDFX_DEBIAN_PACKAGE_VERSION%" }
"%SHARED_FRAMEWORK_DEBIAN_PACKAGE_NAME%": { "package_version": "%SHARED_FRAMEWORK_DEBIAN_PACKAGE_VERSION%" }%SHARED_FRAMEWORK_DEBIAN_PACKAGE_ADDITIONAL_DEPENDENCY%,
"%NETCOREAPP_TARGETING_PACK_DEBIAN_PACKAGE_NAME%": { "package_version": "%SHARED_FRAMEWORK_DEBIAN_PACKAGE_VERSION%" },
"%ASPNETCORE_SHAREDFX_DEBIAN_PACKAGE_NAME%": { "package_version": "%ASPNETCORE_SHAREDFX_DEBIAN_PACKAGE_VERSION%" },
"%ASPNET_TARGETING_PACK_DEBIAN_PACKAGE_NAME%": { "package_version": "%ASPNETCORE_SHAREDFX_DEBIAN_PACKAGE_VERSION%" }
}
}

View file

@ -23,12 +23,20 @@
},
"rpm_dependencies": [
{
"package_name": "%SHARED_HOST_RPM_NAME%",
"package_version": "%SHARED_HOST_RPM_VERSION%"
"package_name": "%SHARED_FRAMEWORK_RPM_PACKAGE_NAME%",
"package_version": "%SHARED_FRAMEWORK_RPM_PACKAGE_VERSION%"
},
{
"package_name": "%ASPNETCORE_SHAREDFX_RPM_PACKAGE_NAME%",
"package_version": "%ASPNETCORE_SHAREDFX_RPM_PACKAGE_VERSION%"
},
{
"package_name": "%NETCOREAPP_TARGETING_PACK_RPM_PACKAGE_NAME%",
"package_version": "%SHARED_FRAMEWORK_RPM_PACKAGE_VERSION%"
},
{
"package_name": "%ASPNET_TARGETING_PACK_RPM_PACKAGE_NAME%",
"package_version": "%ASPNETCORE_SHAREDFX_RPM_PACKAGE_VERSION%"
}
],
"directories": [