我以前在Azure Web App上有一个Node应用程序,现在是Go应用程序.问题是当我部署时我从Kudu得到这个:
Using cached version of deployment script (command: 'azure -y --no-dot-deployment -r "D:\home\site\repository" -o "D:\home\site\deployments\tools" --node --sitePath "D:\home\site\repository"').
这显然后来抱怨没有找到server/app.js文件.
所以我尝试为我的应用程序生成一个部署脚本azure site deploymentscript --go.
即使我在应用程序的设置中有GO15VENDOREXPERIMENT = 1,它也在抱怨依赖关系.我的所有依赖项都出现在/ vendor文件夹中.
我将此变量设置在deploy.cmd由azure site deploymentscript命令生成的文件中.
仍然抱怨一个依赖关系不存在.请注意,现在它正在搜索本地供应商树,但依赖关系在那里,我可以在Github仓库中看到它,我也在本地看到它.
我有其他的Go应用程序在Azure上部署了很好的销售依赖项,但是这个是一个Node应用程序以前根本就没有工作.
我甚至试图评论依赖性getter deploy.cmd,因为所有都是本地的,这个步骤不是必需的.但即使这样也行不通,因为go build失败的抱怨不依赖于依赖.它位于供应商文件夹中,并GO15VENDOREEXPERIMENT在cmd文件和应用程序应用程序设置中设置为1.
那么我的选择是什么?
我怎么能告诉Kudu使用Go默认部署,也许Azure中的那个可以工作,因为我的其他应用程序没有本地.deployement和deploy.cmd文件.
编辑
我刚刚将测试部署到一个全新的Azure Web应用程序,默认情况下该应用程序被检测为Node应用程序.我猜这是因为在根目录中存在一个package.json,我还有一个main.go package main作为包名.
所以也许只是deploy.cmd由azure site deploymentscript那些不是最新的东西产生的东西?(我刚刚更新了我对azure-cli的验证,因为起初我没有--go标志).
为了完整性,这里是Kudu在新创建的应用程序上部署时的输出,得到与Node 1相同的错误:
remote: Resolving dependencies
remote: # cd .; git clone https://github.com/org/mypkg D:\local\Temp\8d3397e1e014401\gopath\src\github.com\org\mypkg …