Ant*_*rin 10 powershell nuget oneget powershellget
我想将许多PowerShell脚本发布为构建系统上使用的Nuget包.
我想使用PowerShellGet为我和版本管理做安装工作.
我不希望这些脚本成为任何Visual Studio解决方案的一部分,而是作为独立脚本.
在任何系统上,配置的Nuget提供程序用户执行:
Install-Module MyModule
Run Code Online (Sandbox Code Playgroud)
从那时起,该模块的所有导出将永久可供该用户使用.用户也可以再次调用该命令来更新这些脚本的版本.
你可以在这里找到当前的包状态:GitHub
我已将Nuget提供程序添加并配置到我们的本地Nuget服务器
要做这个电话Get-PackageProvider -Name NuGet -ForceBootstrap和Set-PSRepository -Name My_Nuget_Repo -SourceLocation http://my-nuget/api -InstallationPolicy Trusted
Import-Module我可以通过Install-Modulecmdlet 安装该软件包,稍后我会在Get-InstalledModule列表中看到它.
但是,没有可用的功能.
此外,无论如何,但Install-Module不从我的包中调用任何脚本:
ScriptsToProcess从MyModule.psd1Install.ps1从tools文件夹调用Init.ps1从tools文件夹调用Import-Module(从Visual Studios安装时,相同的包正常工作Install-Package MyModule,调用脚本,导入PowerShell模块).
因为PowerShellGet基于OneGet它似乎问题是在Install-Packagecmdlet(在cmdlet中调用Install-Module).
当我Install-Package MyModule从Visual Studio 执行Install.ps1并被Init.ps1调用时.但纯PowerShell的相同命令什么都不做.
Ant*_*rin 21
经过长时间的逆向工程,我找到了根本原因
PSModule必须<Tags>在nuspec文件中添加魔法标记.
您根本不应手动创建nuspec文件和打包nuget包.请改用Publish-Modulecmdlet.
我已经更新了powershellget-module GitHub:
看看这个.
| 归档时间: |
|
| 查看次数: |
3930 次 |
| 最近记录: |