我尝试设置从Bitbucket repo到Azure CDN的持续部署。使用场景是前端开发人员将静态资产(js,图像,css样式表等)提交到他们的Bitbucket仓库并触发自动发布到Azure blob存储实例。
我已经设置了CDN及其blob存储服务端点,并且可以成功地为其提供测试文件。我无法弄清楚如何将Bitbucket连接到它。我已经设置了一个带有库存骨架脚本的管道,但现在我卡住了,需要一些指示。
此外,blob容器是完全非结构化的 - 是否有某种方式在其上强加文件夹结构?到目前为止,我能想到的唯一解决方法是使用单独的容器(例如css,js,img),但是当简单的目录似乎足够时,这似乎过度工程化了。有人可以帮忙吗?
答案 0 :(得分:1)
我已经设置了CDN及其blob存储服务端点,并且可以成功地从中提供测试文件。我无法弄清楚的是如何将Bitbucket连接到它。我已经设置了一个带有库存骨架脚本的管道,但现在我卡住了,需要一些指示。
我已经使用Bitbucket Pipelines和tutorial检查了从Bitbucket管道部署到Azure Web Apps以及pipeline2azure关于通过FTP将Bitbucket管道中的Web应用程序发布到Azure Web App的问题部署。对于Azure blob存储,我假设您需要利用Manage webhooks通过您的存储库中的事件有效负载(例如Push
,Updated
等)向您的服务器发出请求,然后您确定添加,修改或删除了哪些文件,然后使用Bitbucket Cloud REST APIs检索文件并利用Azure Blob storage client SDK或REST API将文件上传到blob存储。
众所周知,Azure CDN支持 Origin类型(存储,云服务,Web App,自定义源)。根据我的理解,通过简单的方式,您可以将Continuous Deployment to Azure App Service与BitBucket存储库一起使用,然后将Azure CDN指向Web App。此外,您可以利用KUDU或ftp工具(例如FileZilla)来管理您的静态文件。