[automated] Merge branch 'release/8.0.3xx' => 'main' (#18709)
This commit is contained in:
commit
8f62fd0b22
7 changed files with 74 additions and 7 deletions
|
@ -189,7 +189,8 @@
|
|||
<SharedHostVersion>$(MicrosoftNETCoreAppRuntimePackageVersion)</SharedHostVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<WixPackageVersion>1.0.0-v3.14.0.5722</WixPackageVersion>
|
||||
<!-- This is the version of the zip archive for the WiX toolset and is different from the NuGet package version format. -->
|
||||
<WixVersion>3.14.0.8606</WixVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<!-- 9.0 Template versions -->
|
||||
|
|
|
@ -64,7 +64,8 @@
|
|||
"name": "aspire",
|
||||
"defaultRemote": "https://github.com/dotnet/aspire",
|
||||
"exclude": [
|
||||
"src/Aspire.Dashboard/**/*"
|
||||
"src/Aspire.Dashboard/**/*",
|
||||
"samples/**/*"
|
||||
]
|
||||
},
|
||||
{
|
||||
|
|
|
@ -55,6 +55,7 @@ target_link_libraries(Finalizer shell32.lib)
|
|||
target_link_libraries(Finalizer advapi32.lib)
|
||||
target_link_libraries(Finalizer version.lib)
|
||||
target_link_libraries(Finalizer msi.lib)
|
||||
target_link_libraries(Finalizer shlwapi.lib)
|
||||
|
||||
# Add WiX libraries
|
||||
target_link_libraries(Finalizer wcautil.lib)
|
||||
|
|
|
@ -492,12 +492,64 @@ LExit:
|
|||
return hr;
|
||||
}
|
||||
|
||||
void RemoveInstallStateFile(LPWSTR sczSdkFeatureBandVersion, LPWSTR sczPlatform)
|
||||
{
|
||||
HRESULT hr = S_OK;
|
||||
LPWSTR sczProgramData = NULL;
|
||||
LPWSTR sczInstallStatePath = NULL;
|
||||
LPWSTR sczPath = NULL;
|
||||
|
||||
hr = ShelGetFolder(&sczProgramData, CSIDL_COMMON_APPDATA);
|
||||
ExitOnFailure(hr, "Failed to get shell folder.");
|
||||
|
||||
hr = PathConcat(sczProgramData, L"dotnet", &sczInstallStatePath);
|
||||
ExitOnFailure(hr, "Failed to concat dotnet to install state path.");
|
||||
|
||||
hr = PathConcat(sczInstallStatePath, L"workloads", &sczInstallStatePath);
|
||||
ExitOnFailure(hr, "Failed to concat workloads to install state path.");
|
||||
|
||||
hr = PathConcat(sczInstallStatePath, sczPlatform, &sczInstallStatePath);
|
||||
ExitOnFailure(hr, "Failed to concat platform (%ls) to install state path.", sczPlatform);
|
||||
|
||||
hr = PathConcat(sczInstallStatePath, sczSdkFeatureBandVersion, &sczInstallStatePath);
|
||||
ExitOnFailure(hr, "Failed to concat feature band (%ls) to install state path.", sczSdkFeatureBandVersion);
|
||||
|
||||
hr = PathConcat(sczInstallStatePath, L"installstate", &sczInstallStatePath);
|
||||
ExitOnFailure(hr, "Failed to concat installstate to install state path.");
|
||||
|
||||
hr = PathConcat(sczInstallStatePath, L"default.json", &sczInstallStatePath);
|
||||
ExitOnFailure(hr, "Failed to concat default.json to install state path.");
|
||||
|
||||
if (FileExistsEx(sczInstallStatePath, NULL))
|
||||
{
|
||||
LogStringLine(REPORT_STANDARD, "Deleting install state file: %ls", sczInstallStatePath);
|
||||
hr = FileEnsureDelete(sczInstallStatePath);
|
||||
ExitOnFailure(hr, "Failed to delete install state file: %ls", sczInstallStatePath);
|
||||
|
||||
hr = PathGetParentPath(sczInstallStatePath, &sczPath);
|
||||
ExitOnFailure(hr, "Failed to get parent path of install state file.");
|
||||
|
||||
LogStringLine(REPORT_STANDARD, "Cleaning up empty workload folders.");
|
||||
DirDeleteEmptyDirectoriesToRoot(sczPath, 0);
|
||||
}
|
||||
else
|
||||
{
|
||||
LogStringLine(REPORT_STANDARD, "Install state file does not exist: %ls", sczInstallStatePath);
|
||||
}
|
||||
|
||||
LExit:
|
||||
ReleaseStr(sczPath);
|
||||
ReleaseStr(sczInstallStatePath)
|
||||
ReleaseStr(sczProgramData);
|
||||
}
|
||||
|
||||
int wmain(int argc, wchar_t* argv[])
|
||||
{
|
||||
HRESULT hr = S_OK;
|
||||
DWORD dwExitCode = 0;
|
||||
LPWSTR sczDependent = NULL;
|
||||
LPWSTR sczFeatureBandVersion = NULL;
|
||||
LPWSTR sczPlatform = NULL;
|
||||
BOOL bRestartRequired = FALSE;
|
||||
BOOL bSdkFeatureBandInstalled = FALSE;
|
||||
int iMajor = 0;
|
||||
|
@ -507,16 +559,19 @@ int wmain(int argc, wchar_t* argv[])
|
|||
hr = ::Initialize(argc, argv);
|
||||
ExitOnFailure(hr, "Failed to initialize.");
|
||||
|
||||
hr = StrAllocString(&sczPlatform, argv[3], 0);
|
||||
ExitOnFailure(hr, "Failed to copy platform argument.");
|
||||
|
||||
// Convert the full SDK version to a feature band version
|
||||
hr = ParseSdkVersion(argv[2], &sczFeatureBandVersion);
|
||||
ExitOnFailure(hr, "Failed to parse version, %ls.", argv[2]);
|
||||
|
||||
// Create the dependent value, e.g., Microsoft.NET.Sdk,6.0.300,arm64
|
||||
hr = StrAllocFormatted(&sczDependent, L"Microsoft.NET.Sdk,%ls,%ls", sczFeatureBandVersion, argv[3]);
|
||||
hr = StrAllocFormatted(&sczDependent, L"Microsoft.NET.Sdk,%ls,%ls", sczFeatureBandVersion, sczPlatform);
|
||||
ExitOnFailure(hr, "Failed to create dependent.");
|
||||
LogStringLine(REPORT_STANDARD, "Setting target dependent to %ls.", sczDependent);
|
||||
|
||||
hr = ::DetectSdk(sczFeatureBandVersion, argv[3], &bSdkFeatureBandInstalled);
|
||||
hr = ::DetectSdk(sczFeatureBandVersion, sczPlatform, &bSdkFeatureBandInstalled);
|
||||
ExitOnFailure(hr, "Failed to detect installed SDKs.");
|
||||
|
||||
// If the feature band is still present, do not remove workloads.
|
||||
|
@ -529,7 +584,7 @@ int wmain(int argc, wchar_t* argv[])
|
|||
hr = ::RemoveDependent(sczDependent, &bRestartRequired);
|
||||
ExitOnFailure(hr, "Failed to remove dependent \"%ls\".", sczDependent);
|
||||
|
||||
hr = ::DeleteWorkloadRecords(sczFeatureBandVersion, argv[3]);
|
||||
hr = ::DeleteWorkloadRecords(sczFeatureBandVersion, sczPlatform);
|
||||
ExitOnFailure(hr, "Failed to remove workload records.");
|
||||
|
||||
if (bRestartRequired)
|
||||
|
@ -537,9 +592,12 @@ int wmain(int argc, wchar_t* argv[])
|
|||
dwExitCode = ERROR_SUCCESS_REBOOT_REQUIRED;
|
||||
}
|
||||
|
||||
RemoveInstallStateFile(sczFeatureBandVersion, sczPlatform);
|
||||
|
||||
LExit:
|
||||
ReleaseStr(sczDependent);
|
||||
ReleaseStr(sczFeatureBandVersion);
|
||||
ReleaseStr(sczPlatform);
|
||||
LogUninitialize(TRUE);
|
||||
RegUninitialize();
|
||||
WiuUninitialize();
|
||||
|
|
|
@ -12,6 +12,8 @@
|
|||
#include <winreg.h>
|
||||
#include <msi.h>
|
||||
#include <pathcch.h>
|
||||
#include <shlobj.h>
|
||||
#include <shlwapi.h>
|
||||
|
||||
// Configure some logging parameters for WiX
|
||||
#define ExitTrace LogErrorString
|
||||
|
@ -26,3 +28,7 @@
|
|||
#include "pathutil.h"
|
||||
#include "strutil.h"
|
||||
#include "wiutil.h"
|
||||
#include "dirutil.h"
|
||||
#include "fileutil.h"
|
||||
#include "shelutil.h"
|
||||
|
||||
|
|
|
@ -12,7 +12,8 @@
|
|||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.Signed.Wix" Version="$(WixPackageVersion)" GeneratePathProperty="true" />
|
||||
<!-- The MicrosoftSignedWixVersion property comes from the Arcade SDK DefaultVersions.props -->
|
||||
<PackageReference Include="Microsoft.Signed.Wix" Version="$(MicrosoftSignedWixVersion)" GeneratePathProperty="true" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
|
|
@ -3,7 +3,6 @@
|
|||
<Target Name="SetupWixProperties" DependsOnTargets="GetCurrentRuntimeInformation">
|
||||
<!-- AcquireWix Properties -->
|
||||
<PropertyGroup>
|
||||
<WixVersion>$(WixPackageVersion)</WixVersion>
|
||||
<WixDownloadUrl>https://netcorenativeassets.blob.core.windows.net/resource-packages/external/windows/wix/Microsoft.Signed.Wix-$(WixVersion).zip</WixDownloadUrl>
|
||||
<WixRoot>$(ArtifactsDir)Tools/WixTools/$(WixVersion)</WixRoot>
|
||||
<WixDestinationPath>$(WixRoot)/WixTools.$(WixVersion).zip</WixDestinationPath>
|
||||
|
|
Loading…
Reference in a new issue