我使用的是Artifactory 7.10.6。go版本1.15.6 (也是用旧版本测试的)我没有使用jfrog cli,也不愿意使用。
我在试着找出我做错了什么。我使用Artifactory从远程连接下载内容,并将其存储在本地存储库中,用于其他包类型,但这似乎不适用于我的GO。免责声明,我不是非常精通围棋...
这是我的设置。一个叫做" go -ext-release“的本地go repo,一个叫做"go- gocenter”的gocenter的遥控器,一个叫做"go- virtual“的虚拟的,它只包含"go-ext-release”一个叫做"go- virtual -dev“的虚拟的,它包含"go-virtual”,后面跟着"go-gocenter“
当然,这里的想法。运行GOPROXY设置为"go-virtual-dev“的构建,将下载的文件从go-gocenter-cache复制到"go-ext-release”。这将使我获得重置环境所需的所有文件,指向GOPROXY "go-virtual“并运行构建。
我的构建指向"go-virtual-dev“运行良好。构建工作,内容被拉下(主要是.mod和.info)。我将内容移动到本地(go-ext-release),并使用"go-virtual“在一个干净的环境中构建,构建失败。它说不能访问.zip文件。例如,/github.com/gorilla/mux/@v/v1.7.4.zip上的404当然,当我查找这个zip时,它并不存在。如果我将它试图访问的url从"go-virtual“路径更改为"go-virutal-dev”,并将其输入web浏览器,正确的zip文件就会被下载到"go-gocenter-cache“存储库(正如预期的那样)。我对构建所需的4或5个zip文件执行了此过程(这是一个小型测试构建),然后将这些zip从缓存位置移动到"go-ext-release“代码库。在此之后,构建使用"go-virtual“存储库(即,只查看本地存储库的存储库)。
那么我到底做错了什么呢?我的预期是,初始构建也会将所有文件(包括zips )拉到缓存中。我知道构建将它们删除,因为我可以在我的GOCACHE文件夹中看到它们。它好像没有用我的GOPROXY把拉链拉下来
任何帮助都将不胜感激。
是否有命令行开关来强制go显示它用于拉取的确切URL?我已经尝试过使用go get -v,但是它没有给出完整的url。
发布于 2021-01-27 01:43:45
您可以尝试使用空GOPATH
对go-virtual-dev
运行构建吗?我相信Go客户端不会触发模块zip下载,如果你已经在本地拥有它,这将不允许Artifactory从远程repo缓存它。
顺便说一句,运行go get -x
应该会显示正在获取的所有URL。
https://stackoverflow.com/questions/65905693
复制相似问题