将 App Center 生成配置导出到 Azure Pipelines
重要
Visual Studio App Center 计划于 2025 年 3 月 31 日停用。 虽然可以继续使用 Visual Studio App Center,直到它完全停用,但有几种建议的替代方法可以考虑迁移到其中。
概述
使用 App Center,可以使用生成导出功能将所有 App Center 生成配置导出到 Azure Pipelines。 可以下载 JSON 或 YAML 文件并将其导入 Azure Pipelines。
虽然将 App Center 生成配置直接迁移到 Azure Pipelines 是最简单的选项,但它可能无法很好地针对特定应用程序进行优化。 考虑从头开始构建 Azure Pipelines 以获取更优化的体验(Android、 Xcode、 Xamarin)
先决条件
需要一个 Azure DevOps 项目,用于导入生成配置。 可以创建新项目或使用现有项目。
(可选)为 App Center 任务添加服务连接
如果已将 App Center 测试或 App Center Distribute 集成到生成配置中,则需要创建服务连接
- 导航到 Azure DevOps 项目设置 -> 管道 -> 服务连接
- 选择“新建服务连接”
- 搜索“Visual Studio App Center”-> 下一步
- 创建 API 令牌,为连接命名并保存
使用 JSON 文件导出
从 App Center 生成页导出 JSON 文件。
- 导航到 App Center 门户
- 选择应用程序
- 转到“生成”部分,选择分支,然后选择导出
- 选择“下载”,然后选择“下载 JSON”
更改 JSON 文件中的项目 ID
获取 Azure DevOps 项目的 ID
- 导航到下面的 URL 并复制项目的 ID
https://dev.azure.com/{organization}/_apis/projects?api-version=6.0
2.将项目 ID 粘贴到
project
JSON 文件中的参数中
创建 Azure Pipeline
- 导航到 Azure DevOps -> 管道 -> 导入管道并选择下载的 JSON 文件
- 在
Pipeline
节中Agent Pool
,在参数下选择Hosted (Azure Pipelines)
- 在参数下
Agent Specification
选择最新的 macOS Microsoft托管代理 - 在
Get Sources
部分中,添加与应用程序存储库的连接
(可选)上传签名文件和更新密码
如果在 App Center 生成配置中使用代码登录,则需要使用 安全文件 功能将各自的文件上传到 Azure Pipelines。 此外,需要更新存储在管道中的密码变量
Android
- 将密钥存储文件上传到 Azure DevOps 项目
- 更新
keystorePassword
、keyAlias
、keyPassword
和keystoreFilename
变量
iOS/macOS
- 将预配配置文件和证书上传到 Azure DevOps 项目
- 更新
P12Password
、P12Filename
变量和MobileProvisionFilename
变量
Windows (UWP)
- 将证书上传到 Azure DevOps 项目
- 更新
packageCertificatePassword
、packageCertificateFileName
和packageCertificateBase64String
(可选)将服务连接添加到与 App Center 相关的任务
如果已集成 App Center Distribut 或 App Center Test,则需要修改相应的任务
- 导航到 Azure DevOps -> Pipelines
- 选择导入的管道,然后选择“编辑”
- 查找 App Center 任务,并在“App Center 服务连接”参数中选择以前创建的服务连接
使用 YAML 文件导出
从 App Center 生成页导出 YAML 文件。
- 导航到 App Center 门户
- 选择应用程序
- 转到“生成”部分,选择分支,然后选择导出
- 选择“下载”,然后选择“下载 YAML”
将存储库配置为使用 Azure Pipelines
- 将下载
azure-pipelines.yml
的文件提交到应用程序的存储库 - 导航到 Azure DevOps -> 管道 -> 创建管道
- 选择代码所在的位置
- 查看管道并选择
Run
有关 YAML 管道创建过程的详细信息,可在此处找到。
(可选)上传签名文件和更新密码
如果在 App Center 生成配置中使用代码登录,则需要使用 安全文件 功能将各自的文件上传到 Azure Pipelines。 此外,需要更新存储在管道中的密码变量
Android
- 将密钥存储文件上传到 Azure DevOps 项目
- 在 Azure Pipelines 中创建
keystorePassword
、keyAlias
keyPassword
和keystoreFilename
机密变量 - 使用创建的机密变量更新 YAML 文件
...
keystorePassword: $(keystorePassword)
keyAlias: $(keyAlias)
keyPassword: $(keyPassword)
keystoreFilename: $(keystoreFilename)
...
iOS/macOS
- 将预配配置文件和证书上传到 Azure DevOps 项目
- 在 Azure Pipelines 中创建
P12Password
和P12Filename
MobileProvisionFilename
机密变量 - 使用创建的机密变量更新 YAML 文件
...
P12Password: $(P12Password)
P12Filename: $(P12Filename)
MobileProvisionFilename: $(MobileProvisionFilename)
...
Windows (UWP)
- 将证书上传到 Azure DevOps 项目
- 在 Azure Pipelines 中创建
packageCertificatePassword
和packageCertificateFileName
packageCertificateBase64String
机密变量 - 使用创建的机密变量更新 YAML 文件
...
packageCertificatePassword: $(packageCertificatePassword)
packageCertificateBase64String: $(packageCertificateFileName)
packageCertificateFileName: $(packageCertificateBase64String)
...
(可选)授权新创建的管道使用 App Center 服务连接
如果已集成 App Center Distribut 或 Test,则需要授权管道使用服务连接。
- 打开当前正在运行的作业,会看到有关权限的消息
- 选择正在运行的作业并
Permit
访问服务连接