我正在尝试在Linux Web应用程序上部署我的flask应用程序。 我想为我的代码设置一个Azure管道,将其推送到Azure仓库中。
我已经在python代码中进行了所有配置更改,并使用Python 3.7的运行时堆栈创建了一个Web应用程序
一旦我进入部署中心来部署我的代码,在选择azure存储库作为我的代码源之后,我将重定向到azure管道选项,在该选项中,我们必须配置构建设置。
但是该构建没有为Python提供任何选项。它只给了我四个构建选项,例如Node,Ruby,Asp.Net和php。
我不能使用: -码头工人 -Git
由于这些限制,我发现没有合适的教程可以这样做。
有人可以告诉我一些为我的python项目设置管道的方法吗?
答案 0 :(得分:1)
Azure DevOps CI / CD可与任何语言,平台和云一起使用。仅对于Python应用程序,您可能需要添加其他步骤才能从Azure Devops CI / CD实现部署。
由于python是一种解释语言,因此不需要编译。如果没有其他步骤(如测试),则只需要在CI管道中使用2个任务:Archive Files任务和Publish Build Artifacts任务。
存档文件任务用于将python应用程序源文件夹打包到一个zip包中,以便在CD中使用它。并且 Publish Build Artifacts任务会将
但是
如果您的项目包含并且需要测试,请添加另一个Command line task以使用pytest来运行测试。
但是,在天蓝色的devops中,如果要使用 pytest 之类的python组件,则需要使用一些任务配置python环境。
在这里,请参阅此blog。
注意:由于您正在使用的堆栈为Python 3.7
,因此请在“使用Python”任务中将python版本指定为3.x
。
由于您已经在Azure门户中创建了应用程序服务,因此只需在显示的练习3:配置发布管道中跳过步骤4(添加Azure CLI任务)在此blog中,因为步骤4仅用于创建新的Azure资源。
1。。要部署python应用程序,您需要首先添加Azure App Service manage任务,以便在发布管道中安装相应的python版本站点扩展:
它将安装一组相应的工具以支持管理您的应用程序服务。
2。。接下来,您可以使用Azure App Service deploy将在Build管道中创建的 zip 程序包部署到您在Azure门户中配置的应用程序服务。
在此任务中指定订阅后,应用服务将自动显示在应用服务名称的下拉列表中:
然后指定您在构建管道的发布任务中配置的路径。将$(Build.ArtifactStagingDirectory)
替换为$(System.DefaultWorkingDirectory)
,并将$(Build.BuildId)
替换为*
以使用模糊搜索来搜索zip
包。