Closed johlju closed 6 months ago
Thanks, wasn't even aware that was a thing as it wasn't covered in the main readme but found it in the HowDoI.
There's some additional handling that has to happen here, as it can override the default type. Should be doable.
Fixed 98b8346788f7bc8a0e22ea5d215891c4dfa78e18. Please verify
The code you added looks like it removes the PSDependOptions, but I can't get it to work. Looks like it fails at the same place still. Does it fail somewhere else? I tried in several sessions because it felt like I didn't get the latest commits, but I did.
PS> & ([scriptblock]::Create((iwr 'bit.ly/modulefastmain'))) -UseMain
PS> Install-ModuleFast -Path ./RequiredModules.psd1 -Destination './output/RequiredModules' -NoProfileUpdate -NoPSModulePathUpdate -Update -Verbose -Debug -Confirm:$false -DestinationOnly
DEBUG: Flushing ModuleFast Request Cache
DEBUG: Creating new ModuleFast HTTP Client. This should only happen once!
DEBUG: Did not detect a module manifest, passing through as-is
DEBUG: SpecFile Parse: Attempting to auto-detect SpecFile type
DEBUG: SpecFile Parse: Auto-detected SpecFile type as PSResourceGet/RequiredModules due to presence of Repository or Version key
DEBUG: Requires Parse: PSResourceGet Spec specified, evaluating...
DEBUG: PSResourceGet Parse: Adding DscResource.DocGenerator extended module name DscResource.DocGenerator latest
DEBUG: PSResourceGet Parse: Adding PSDependOptions extended module name PSDependOptions latest
DEBUG: PSResourceGet Parse: Adding Pester extended module name Pester latest
DEBUG: PSResourceGet Parse: Adding ComputerManagementDsc extended module name ComputerManagementDsc 9.1.0-preview0002
VERBOSE: DscResource.DocGenerator: Evaluating Module Specification
DEBUG: DscResource.DocGenerator: Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: DscResource.DocGenerator: 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: DscResource.DocGenerator: fetch registration index from https://preview.pwsh.gallery/index.json
DEBUG: DscResource.DocGenerator: fetch info from https://preview.pwsh.gallery/dscresource.docgenerator/index.json
VERBOSE: xDscResourceDesigner: Evaluating Module Specification
DEBUG: xDscResourceDesigner: Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: xDscResourceDesigner: 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: xDscResourceDesigner: fetch info from https://preview.pwsh.gallery/xdscresourcedesigner/index.json
VERBOSE: xPSDesiredStateConfiguration(9.1.0): Evaluating Module Specification
DEBUG: xPSDesiredStateConfiguration(9.1.0): Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: xPSDesiredStateConfiguration(9.1.0): 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: xPSDesiredStateConfiguration: fetch info from https://preview.pwsh.gallery/xpsdesiredstateconfiguration/index.json
VERBOSE: ModuleBuilder: Evaluating Module Specification
DEBUG: ModuleBuilder: Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: ModuleBuilder: 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: ModuleBuilder: fetch info from https://preview.pwsh.gallery/modulebuilder/index.json
VERBOSE: ChangelogManagement: Evaluating Module Specification
DEBUG: ChangelogManagement: Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: ChangelogManagement: 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: ChangelogManagement: fetch info from https://preview.pwsh.gallery/changelogmanagement/index.json
VERBOSE: PSDependOptions: Evaluating Module Specification
DEBUG: PSDependOptions: Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: PSDependOptions: 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: PSDependOptions: fetch info from https://preview.pwsh.gallery/psdependoptions/index.json
VERBOSE: Pester: Evaluating Module Specification
DEBUG: Pester: Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: Pester: 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: Pester: fetch info from https://preview.pwsh.gallery/pester/index.json
VERBOSE: DscResource.Base: Evaluating Module Specification
DEBUG: DscResource.Base: Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: DscResource.Base: 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: DscResource.Base: fetch info from https://preview.pwsh.gallery/dscresource.base/index.json
VERBOSE: ComputerManagementDsc(9.1.0-preview0002): Evaluating Module Specification
DEBUG: ComputerManagementDsc(9.1.0-preview0002): Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: ComputerManagementDsc(9.1.0-preview0002): 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: ComputerManagementDsc: fetch info from https://preview.pwsh.gallery/computermanagementdsc/index.json
VERBOSE: WSManDsc(3.1.1): Evaluating Module Specification
DEBUG: WSManDsc(3.1.1): Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: WSManDsc(3.1.1): 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: WSManDsc: fetch info from https://preview.pwsh.gallery/wsmandsc/index.json
VERBOSE: InvokeBuild: Evaluating Module Specification
DEBUG: InvokeBuild: Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: InvokeBuild: 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: InvokeBuild: fetch info from https://preview.pwsh.gallery/invokebuild/index.json
VERBOSE: NetworkingDsc(9.0.0): Evaluating Module Specification
DEBUG: NetworkingDsc(9.0.0): Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: NetworkingDsc(9.0.0): 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: NetworkingDsc: fetch info from https://preview.pwsh.gallery/networkingdsc/index.json
VERBOSE: DscResource.Test: Evaluating Module Specification
DEBUG: DscResource.Test: Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: DscResource.Test: 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: DscResource.Test: fetch info from https://preview.pwsh.gallery/dscresource.test/index.json
VERBOSE: PSPKI(3.7.2): Evaluating Module Specification
DEBUG: PSPKI(3.7.2): Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: PSPKI(3.7.2): 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: PSPKI: fetch info from https://preview.pwsh.gallery/pspki/index.json
VERBOSE: MarkdownLinkCheck: Evaluating Module Specification
DEBUG: MarkdownLinkCheck: Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: MarkdownLinkCheck: 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: MarkdownLinkCheck: fetch info from https://preview.pwsh.gallery/markdownlinkcheck/index.json
VERBOSE: Sampler.GitHubTasks: Evaluating Module Specification
DEBUG: Sampler.GitHubTasks: Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: Sampler.GitHubTasks: 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: Sampler.GitHubTasks: fetch info from https://preview.pwsh.gallery/sampler.githubtasks/index.json
VERBOSE: LoopbackAdapter: Evaluating Module Specification
DEBUG: LoopbackAdapter: Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: LoopbackAdapter: 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: LoopbackAdapter: fetch info from https://preview.pwsh.gallery/loopbackadapter/index.json
VERBOSE: DscResource.AnalyzerRules: Evaluating Module Specification
DEBUG: DscResource.AnalyzerRules: Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: DscResource.AnalyzerRules: 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: DscResource.AnalyzerRules: fetch info from https://preview.pwsh.gallery/dscresource.analyzerrules/index.json
VERBOSE: ConvertToSARIF: Evaluating Module Specification
DEBUG: ConvertToSARIF: Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: ConvertToSARIF: 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: ConvertToSARIF: fetch info from https://preview.pwsh.gallery/converttosarif/index.json
VERBOSE: Indented.ScriptAnalyzerRules: Evaluating Module Specification
DEBUG: Indented.ScriptAnalyzerRules: Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: Indented.ScriptAnalyzerRules: 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: Indented.ScriptAnalyzerRules: fetch info from https://preview.pwsh.gallery/indented.scriptanalyzerrules/index.json
VERBOSE: Plaster: Evaluating Module Specification
DEBUG: Plaster: Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: Plaster: 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: Plaster: fetch info from https://preview.pwsh.gallery/plaster/index.json
VERBOSE: Sampler: Evaluating Module Specification
DEBUG: Sampler: Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: Sampler: 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: Sampler: fetch info from https://preview.pwsh.gallery/sampler/index.json
VERBOSE: PlatyPS: Evaluating Module Specification
DEBUG: PlatyPS: Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: PlatyPS: 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: PlatyPS: fetch info from https://preview.pwsh.gallery/platyps/index.json
VERBOSE: PSScriptAnalyzer: Evaluating Module Specification
DEBUG: PSScriptAnalyzer: Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: PSScriptAnalyzer: 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: PSScriptAnalyzer: fetch info from https://preview.pwsh.gallery/psscriptanalyzer/index.json
VERBOSE: DscResource.Common: Evaluating Module Specification
DEBUG: DscResource.Common: Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: DscResource.Common: 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: DscResource.Common: fetch info from https://preview.pwsh.gallery/dscresource.common/index.json
VERBOSE: StorageDsc(5.1.0): Evaluating Module Specification
DEBUG: StorageDsc(5.1.0): Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: StorageDsc(5.1.0): 🔍 No installed versions matched the spec. Will check remotely.
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: StorageDsc: fetch info from https://preview.pwsh.gallery/storagedsc/index.json
DEBUG: DscResource.DocGenerator: Processing Response
DEBUG: DscResource.DocGenerator: Received Response with 3 pages
DEBUG: StorageDsc(5.1.0): skipping candidate 0.12.0-preview0003 because it is a prerelease and prerelease was not specified either with the -Prerelease parameter, by specifying a prerelease version in the spec, or adding a ! on the module name spec to indicate prerelease is acceptable.
DEBUG: StorageDsc(5.1.0): Found satisfying version 0.11.2 in the inlined index.
VERBOSE: DscResource.DocGenerator(0.11.2): Added to install plan
DEBUG: xDscResourceDesigner: Processing Response
DEBUG: xDscResourceDesigner: Received Response with 2 pages
DEBUG: StorageDsc(5.1.0): Found satisfying version 1.13.0.0 in the inlined index.
VERBOSE: xDSCResourceDesigner(1.13.0.0): Added to install plan
DEBUG: xPSDesiredStateConfiguration(9.1.0): Processing Response
DEBUG: xPSDesiredStateConfiguration(9.1.0): Received Response with 3 pages
DEBUG: StorageDsc(5.1.0): skipping candidate 9.2.0-preview0008 because it is a prerelease and prerelease was not specified either with the -Prerelease parameter, by specifying a prerelease version in the spec, or adding a ! on the module name spec to indicate prerelease is acceptable.
DEBUG: StorageDsc(5.1.0): Found satisfying version 9.1.0 in the inlined index.
VERBOSE: xPSDesiredStateConfiguration(9.1.0): Added to install plan
DEBUG: ModuleBuilder: Processing Response
DEBUG: ModuleBuilder: Received Response with 3 pages
DEBUG: StorageDsc(5.1.0): Found satisfying version 3.1.0 in the inlined index.
VERBOSE: ModuleBuilder(3.1.0): Added to install plan
DEBUG: ModuleBuilder: has 1 additional dependencies: Configuration
DEBUG: Configuration: No modules with this name currently exist in the install plan. Resolving dependency...
DEBUG: Fetching info on remaining 1 dependencies
DEBUG: Configuration: Skipping PSModulePath /Users/johlju/source/SqlServerDsc/output/RequiredModules - Does not have this module.
DEBUG: No local modules that satisfies dependency Configuration. Checking Remote...
DEBUG: ModuleBuilder: Fetching dependency Configuration
DEBUG: REQUEST CACHE HIT for Registration Index https://preview.pwsh.gallery/index.json
DEBUG: Configuration: fetch info from https://preview.pwsh.gallery/configuration/index.json
DEBUG: ChangelogManagement: Processing Response
DEBUG: ChangelogManagement: Received Response with 2 pages
DEBUG: StorageDsc(5.1.0): Found satisfying version 3.1.0 in the inlined index.
VERBOSE: ChangelogManagement(3.1.0): Added to install plan
DEBUG: PSDependOptions: Processing Response
Install-ModuleFast: PSDependOptions: module was not found in the https://preview.pwsh.gallery/index.json repository. Check the spelling and try again.
PS> (Get-Module ModuleFast).Definition > debug.txt
PS> select-string -Path ./debug.txt PSDependOPtions
debug.txt:1065: if ($PSDependManifest.ContainsKey('PSDependOptions')) {
debug.txt:1066: $options = $PSDependManifest['PSDependOptions']
debug.txt:1068: throw [NotSupportedException]"PSDepend Parse: Top-Level DependencyType in PSDependOptions is not currently
supported."
debug.txt:1070: $PSDependManifest.Remove('PSDependOptions')
Looks like your specfile didn't get detected as a PSDepends file. Can you try it with the -SpecFileType PSDepend
? Meanwhile I'll find out why it didn't.
DEBUG: SpecFile Parse: Auto-detected SpecFile type as PSResourceGet/RequiredModules due to presence of Repository or Version key
FYI Target in PSDependOptions is not supported, I've added a warning to tell you what you should put for -Destination but will still run the first time to a default destination.
Ah did not know that, that hasn't changed for several years so must have been wrong from the beginning. I look into changing Sampler's Plaster templates.
@johlju to be clear, it's not supported in modulefast as of now, may be supported later, it's perfectly fine in PSDepend :)
Ah, got you! I misunderstood. Thanks for the clarification 😃
Suggest filtering out the property
PSDependOptions
that is used to control the behavior of PSDepend. To make it work seamlessly. Or possible use the properties to "fill parameters" if they are not passed on command line. 🤔See example here: https://github.com/dsccommunity/SqlServerDsc/blob/main/RequiredModules.psd1
Throws en expection: