如何从 HTTP URI(本地托管在 IIS 上)安装包?
How do I install packages from an HTTP URI (locally hosted on IIS)?
我创建了一个可以在本地安装的包:
cinst <packageName> -source "C:\Host\<packageName>"
但是,当我将这个包放在由 IIS 从虚拟目录通过 http 服务的文件服务器上时,它失败了。
cinst <packageName> -source "http://server/packages/<packageName>"
目标机器可以在浏览器中浏览到包目录,因此可以看到服务器、文件夹并具有列表和读取权限。
错误
[ERROR] - install not installed. The package was not found with the source(s) listed.
Fiddler 显示请求:
http://server/packages/<packageName>
GET /packages/<packageName>
301 redirect to http://server:port/packages/<packageName>
http://server:port/packages/<packageName>
200 with <packageName>.nuspec and .nupkg files in the response
然后
GET /packages/<packageName>/$metadata
404 File or directory not found
我的两个想法:
- 它是 Windows 安全措施阻止我
- 我的包裹是否缺少一些元数据
我曾经在 *nix 上管理包,最近才开始在 Windows 环境中工作,所以请随意说出任何明显的事情!
环境:
Information.PlatformVersion='6.1.7601.65536'|
Information.PlatformName='Windows 7'|
Information.ChocolateyVersion='0.9.9.11'|
设置了 -debug 的巧克力日志中没有其他指针
不使用 IDE 或 Repo,一切都很简单。
太!
不幸的是,NuGet(以及代理 Chocolatey)不能使用裸 http。它现在需要 OData,尽管将来 Chocolatey 团队计划只允许使用 http 索引。
以下资源解释了您的包托管选项:https://github.com/chocolatey/choco/wiki/How-To-Host-Feed
我创建了一个可以在本地安装的包:
cinst <packageName> -source "C:\Host\<packageName>"
但是,当我将这个包放在由 IIS 从虚拟目录通过 http 服务的文件服务器上时,它失败了。
cinst <packageName> -source "http://server/packages/<packageName>"
目标机器可以在浏览器中浏览到包目录,因此可以看到服务器、文件夹并具有列表和读取权限。
错误
[ERROR] - install not installed. The package was not found with the source(s) listed.
Fiddler 显示请求:
http://server/packages/<packageName>
GET /packages/<packageName>
301 redirect to http://server:port/packages/<packageName>
http://server:port/packages/<packageName>
200 with <packageName>.nuspec and .nupkg files in the response
然后
GET /packages/<packageName>/$metadata
404 File or directory not found
我的两个想法:
- 它是 Windows 安全措施阻止我
- 我的包裹是否缺少一些元数据
我曾经在 *nix 上管理包,最近才开始在 Windows 环境中工作,所以请随意说出任何明显的事情!
环境:
Information.PlatformVersion='6.1.7601.65536'|
Information.PlatformName='Windows 7'|
Information.ChocolateyVersion='0.9.9.11'|
设置了 -debug 的巧克力日志中没有其他指针 不使用 IDE 或 Repo,一切都很简单。
太!
不幸的是,NuGet(以及代理 Chocolatey)不能使用裸 http。它现在需要 OData,尽管将来 Chocolatey 团队计划只允许使用 http 索引。
以下资源解释了您的包托管选项:https://github.com/chocolatey/choco/wiki/How-To-Host-Feed