Я написал и скомпилировал модуль PowerShell, который по сути является прославленной оболочкой модуля ActiveDirectory. Мой модуль также имеет правильный файл Манифеста модуля. Я также создал PSRepository, который размещен на сервере, и именно здесь я хотел бы разместить свой модуль.
Когда я запускаю следующую команду:
Publish-Module -Name ADWrap -Repository MyRepo -Tags ActiveDirectory -Force -Verbose
Я получаю эту ошибку:
Publish-PSArtifactUtility: PowerShellGet не может разрешить зависимость модуля «ActiveDirectory» от модуля «ADWrap» от репозитория «MyRepo». Убедитесь, что зависимый модуль «ActiveDirectory» доступен в хранилище «MyRepo». Если этот зависимый модуль ActiveDirectory управляется извне, добавьте его в запись ExternalModuleDependencies в разделе PSData манифеста модуля.
В C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\1.0.0.1\PSModule.psm1: 1227 char: 17
+ Publish-PSArtifactUtility -PSModuleInfo $ moduleInfo `
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~ + CategoryInfo: InvalidOperation: (:) [Publish-PSArtifactUtility], InvalidOperationException
+ FullyQualifiedErrorId: UnableToResolveModuleDependency, Publish-PSArtifactUtility
В записи ExternalModuleDependencies не так много информации. Я искал Google и нашел эти сайты, которые немного помогли здесь
После генерации Манифеста модуля я сделал следующее, чтобы обновить его свойства:
Update-ModuleManifest -Path "\\Server\PowerShell Modules\ADWrap\Version 1.6.1\ADWrap\ADWrap.psd1" -ExternalModuleDependencies 'ActiveDirectory'
Это дало мне то, что похоже на правильный способ включить код ExternalModuleDepencies, но я все еще получаю ошибку. Код PrivateData - это манифест модуля, который выглядит следующим образом:
# Private data to pass to the module specified in RootModule/ModuleToProcess. This may also contain a PSData hashtable with additional module metadata used by PowerShell.
PrivateData = @{
PSData = @{
# Tags applied to this module. These help with module discovery in online galleries.
# Tags = @()
# A URL to the license for this module.
# LicenseUri = ''
# A URL to the main website for this project.
# ProjectUri = ''
# A URL to an icon representing this module.
# IconUri = ''
# ReleaseNotes of this module
# ReleaseNotes = ''
# External dependent modules of this module
ExternalModuleDependencies = 'ActiveDirectory'
} # End of PSData hashtable
} # End of PrivateData hashtable
Я не уверен, что мне не хватает, и я не много видел об этой проблеме в Интернете, поэтому любая помощь будет оценена.