Azure Web 应用部署

此页面记录使用下一个主要版本 dpl v2 的部署,该版本目前处于 beta 发布阶段。请参阅 我们的博客文章 获取详细信息。当前默认版本为 dpl v1。请查看 此处提供的 dpl v1 文档

请务必阅读 v2 部署概述

Travis CI 可以在构建成功后自动部署您的 Azure Web 应用

对于最小配置,请将以下内容添加到您的 .travis.yml

deploy:
  provider: azure_web_apps
  username: <username>
  password: <encrypted password>
  site: <site>
  edge: true # opt in to dpl v2

状态 #

对 Azure Web 应用的部署支持处于 alpha 阶段。请参阅 成熟度级别 获取详细信息。

已知选项 #

使用以下选项进一步配置部署。

用户名 Web 应用部署用户名 - **必填**,类型:字符串
密码 Web 应用部署密码 - **必填**,**密钥**,类型:字符串
站点 Web 应用名称(例如 myapp.azurewebsites.net 中的 myapp) - **必填**,类型:字符串
插槽 插槽名称(如果您的应用使用暂存部署) - 类型:字符串
详细 打印来自 Azure 的部署输出。警告:如果身份验证失败,Git 会以明文形式打印凭据。正确的凭据仍然隐藏。 - 类型:布尔值

共享选项 #

清理 在部署之前清理 Git 工作目录中的构建工件 - 类型:布尔值
运行 在部署成功完成之后要执行的命令 - 类型:字符串或字符串数组

环境变量 #

如果所有选项以 AZURE_WA_ 为前缀,则可以作为环境变量提供。

例如,password 可以作为 AZURE_WA_PASSWORD=<password> 提供。

保护密钥 #

密钥选项值应作为构建配置(.travis.yml 文件)中的加密字符串或存储库设置中的环境变量提供。

环境变量可以在存储库的设置页面上设置,也可以使用 travis env set 设置。

travis env set AZURE_WA_PASSWORD <password>

为了在将选项值添加到 .travis.yml 文件时对其进行加密,请使用 travis encrypt

travis encrypt <password>

或者使用 --add 直接将其添加到 .travis.yml 文件中。请注意,此命令必须在存储库的根目录中运行。

travis encrypt --add deploy.password <password>

获取部署进度和日志 #

Azure Web 应用提供程序可以使用 verbose 选项将 Azure 的部署进度打印到您的 Travis 日志中。

但是,如果身份验证失败,Git 会打印您的密码(如果您提供正确的用户名/密码组合,则不会打印)。

deploy:
  provider: azure_web_apps
  # ⋮
  verbose: true

关于 .gitignore 的说明 #

由于此部署策略依赖于 Git,因此请注意部署将遵循 .gitignore

如果您的 .gitignore 文件匹配构建创建的内容,请使用 before_deploy 更改其内容。

部署到插槽 #

您可能需要将多个分支部署到不同的插槽。您可以设置多个提供程序以部署到特定插槽。以下配置会将 master 分支部署到 myapp-staging 插槽,并将 develop 分支部署到 myapp-develop 插槽。为了使用插槽,您需要 在 Azure App Service 中为 Web 应用设置暂存环境

deploy:
- provider: azure_web_apps
  # ⋮
  slot: myapp-staging
  on:
    branch: master
- provider: azure_web_apps
  # ⋮
  slot: myapp-dev
  on:
    branch: dev

Pull Request #

请注意,Pull Request 构建完全跳过部署步骤。

另请参阅 #