Prerequisites
Steps to reproduce
As a user, I want dsc resource export --input to honour the filter I pass, so that I can export the resources of one repository or a single repository by name instead of everything on the machine.
Since DSC 3.3.0, export receives the filter instance on stdin when --input (or properties in a configuration) is given. Both manifests declare "input": "stdin" for export, but the manifest command does not pipe $Input to the script and ExportOperation never reads $stdinput, so the filter is silently discarded and the full list is returned.
dsc resource export -r Microsoft.PowerShell.PSResourceGet/PSResourceList --input '{"repositoryName":"PSGallery"}'
dsc resource export -r Microsoft.PowerShell.PSResourceGet/Repository --input '{"name":"PSGallery"}'
Expected behavior
The first command returns one PSResourceList instance for PSGallery, whereas the second command returns one Repository instance for PSGallery.
Actual behavior
Both commands return every repository / every resource list on the machine, identical to running export without --input. No warning is emitted.
Error details
Environment data
Directory: C:\Program Files\PowerShell\Modules
ModuleType Version PreRelease Name PSEdition ExportedCommands
---------- ------- ---------- ---- --------- ----------------
Binary 1.3.0 preview1 Microsoft.PowerShell.PSResourceGet Core,Desk {Compress-PSResource, Find-PSResource, …
Binary 1.2.0 preview5 Microsoft.PowerShell.PSResourceGet Core,Desk {Compress-PSResource, Find-PSResource, …
Directory: C:\program files\powershell\7\Modules
ModuleType Version PreRelease Name PSEdition ExportedCommands
---------- ------- ---------- ---- --------- ----------------
Binary 1.2.0 Microsoft.PowerShell.PSResourceGet Core,Desk {Compress-PSResource, Find-PSResource, …
Key : PSVersion
Value : 7.6.6
Name : PSVersion
Key : PSEdition
Value : Core
Name : PSEdition
Key : GitCommitId
Value : 7.6.6
Name : GitCommitId
Key : OS
Value : Microsoft Windows 10.0.26200
Name : OS
Key : Platform
Value : Win32NT
Name : Platform
Key : PSCompatibleVersions
Value : {1.0, 2.0, 3.0, 4.0…}
Name : PSCompatibleVersions
Key : PSRemotingProtocolVersion
Value : 2.4
Name : PSRemotingProtocolVersion
Key : SerializationVersion
Value : 1.1.0.1
Name : SerializationVersion
Key : WSManStackVersion
Value : 3.0
Name : WSManStackVersion
Visuals
No response
Prerequisites
Steps to reproduce
As a user, I want
dsc resource export --inputto honour the filter I pass, so that I can export the resources of one repository or a single repository by name instead of everything on the machine.Since DSC 3.3.0,
exportreceives the filter instance on stdin when--input(orpropertiesin a configuration) is given. Both manifests declare"input": "stdin"forexport, but the manifest command does not pipe$Inputto the script andExportOperationnever reads$stdinput, so the filter is silently discarded and the full list is returned.Expected behavior
The first command returns one PSResourceList instance for PSGallery, whereas the second command returns one Repository instance for PSGallery.Actual behavior
Both commands return every repository / every resource list on the machine, identical to running export without --input. No warning is emitted.Error details
Environment data
Visuals
No response