用途:为 .NET 应用提供 GitHub Actions 部署流水线模式,涵盖 GitHub Pages(Starlight/Docusaurus 静态文档)、容器镜像推送(GHCR、ACR)、Azure Web Apps 部署、带保护规则的 GitHub Environments 分阶段发布,以及部署失败后的回滚策略。版本约定:GitHub Actions 工作流语法 v2、azure/webapps-deploy@v3、azure/login@v2。
主要能力:一是文档部署,分离 build 与 deploy 作业,使用 actions/upload-pages-artifact@v3 与 actions/deploy-pages@v4,权限需 contents: read、pages: write、id-token: write,concurrency 设 cancel-in-progress: false;也可用 docfx 从 .NET XML 注释生成 API 文档。二是容器推送,用 docker/login-action@v3 登录 ghcr.io,docker/build-push-action@v6 构建推送并按 digest 晋升到生产。三是 Azure Web Apps 部署,用 azure/login@v2 配合 OIDC 联合凭据,azure/webapps-deploy@v3 发布,支持部署槽(deployment slots)先验证再交换。四是环境治理,通过 GitHub Environments 配置必需审核人、等待计时器与分支策略,并使用环境级 secrets/vars。五是回滚,包含健康检查失败后重部署上一版本、Azure 槽交换回滚,以及 workflow_dispatch 手动回滚。
限制与边界:本技能只负责部署流水线模式;容器编排与运行时配置、容器镜像编写、NuGet 推送与容器构建、起步 CI 模板、Azure DevOps 部署、CLI 发布流水线均属其它技能范围。注意事项:多行 bash 步骤应使用 set -euo pipefail;部署并发组不要用 cancel-in-progress: true;部署后必须做健康检查;OIDC 登录需 id-token: write;勿硬编码 Azure 凭据;生产建议用 digest 引用镜像。具体平台部署命令与密钥配置需按环境自行提供。