Scripts installed using `Save-PSResource -IncludeXml` are not discoverable by `Get-InstalledPSResource -Path`
Prerequisites
- [X] Write a descriptive title.
- [X] Make sure you are able to repro it on the latest released version
- [X] Search the existing issues.
Steps to reproduce
Scripts installed with Save-PSResource -IncludeXml are not discoverable by Get-InstalledPSResource -Path.
Observed difference in behavior:
Save-PSResource -IncludeXmladds<script_name>_InstalledScriptInfo.xmlto the same directory as the script itself.Install-PSResourcecreates a directoryInstalledScriptInfoswhere<script_name>_InstalledScriptInfo.xmlis added.
I use Save-PSResource because Install-PSResource installs to OneDrive when known folder move (KFM) is enabled, and Install-PSResource has no override capabilities.
- https://github.com/PowerShell/PSResourceGet/issues/627
Reproduce:
# Create unique $InstallPath
$InstallPath = [string] '{0}\{1}' -f [System.Environment]::GetFolderPath('Desktop'), [datetime]::Now.ToString('yyyyMMddhhMMss')
# Create path
if (-not [System.IO.Directory]::Exists($InstallPath)) {
$null = [System.IO.Directory]::CreateDirectory($InstallPath)
}
# Save a module and a script
Save-PSResource -Repository 'PSGallery' -TrustRepository -IncludeXml -Path $InstallPath -Name 'Az.Accounts'
Save-PSResource -Repository 'PSGallery' -TrustRepository -IncludeXml -Path $InstallPath -Name 'Get-WindowsAutoPilotInfo'
# List contents of $InstallPath
Get-ChildItem -Path $InstallPath
# Find installed PSResources
Get-InstalledPSResource -Path $InstallPath
Expected behavior
Modules "installed" using Save-PSResource is discoverable by Get-InstalledPSResource -Path, so should scripts be.
Actual behavior
See expected behavior.
Error details
No error message.
Environment data
- Windows 11
- PowerShell v7.3.8
- Microsoft.PowerShell.PSResourceGet v1.0.0
Visuals
Tested moving the XML files to the InstalledScriptInfos directory myself, but scripts were still not discoverable by Get-InstalledPSResource -Path.
I'll be using [Microsoft.PowerShell.PSResourceGet.UtilClasses.TestHooks]::ReadPSGetResourceInfo('<path_to_xml>') for now.
Thanks @o-l-a-v we were able to repro this and will fix it in on of the upcoming releases.