如何从持续集成服务器将IPA推送到App Center分发

7

如何通过命令行将iOS IPA文件推送到App Center Distribute?

我正在使用CI(持续集成)服务器构建我的应用程序,我尝试使用App Center Test门户提供的以下命令,但它不起作用并输出以下错误:

appcenter distribute release -f ~/Desktop/MondayPundayApp.ipa -g Collaborators --app Punday/mondaypundayapp--ios

命令'appcenter distribute release'需要一个已登录的用户。使用'appcenter login'命令进行登录。
1个回答

15

通过CLI将代码推送到App Center测试

1. 手动获取API令牌

App Center CLI 需要用户登录,我们可以通过提供登录令牌从我们的构建服务器进行登录。

使用App Center CLI,输入以下命令,替换[Token名称]为您想要为此令牌命名的任何内容:

appcenter login
appcenter tokens create -d "[Name Of Token]"

它将提供以下响应:

ID: [唯一的 Guid]

API Token: [唯一的 API Token]

Description: [Token 的名称]

Created at: [时间戳]

复制 API Token 的结果。我们将在 CI 脚本中使用它。

2. 面向 CI 服务器的 App Center Distribute 脚本

在您的持续集成流水线中,使用此 bash 脚本将 IPA 文件推送到 App Center Distribute

bash 脚本执行以下操作:

  1. 定位 IPA 文件
  2. 安装 appcenter cli
  3. 使用 API Token 登录 App Center
  4. 将 IPA 推送到 App Center Distribute
#!/usr/bin/env bash

IPAFile=`find . -name *.ipa | head -1`

npm install -g appcenter-cli@1.2.2

appcenter login --token [login token]

appcenter distribute release -f $IPAFile -g Collaborators --app Punday/mondaypundayapp--ios 

Punday/MondayPundayApp-iOS在这里代表什么?是应用程序的所有者/应用名称吗? - Kumar Saurabh
@KumarSaurabh 这是应用程序的名称。 - Brandon Minnick
@KumarSaurabh 是的,它是appOwner/appName。如果你只输入应用程序名称,你会得到“appName不是一个有效的应用程序ID”。 - Tomusm
如何传递发布说明? - iKushal
2
@iKushal,为了传递发布说明,我们需要使用“-r”标志。 - Jay
当我尝试从Xcode Cloud登录到AppCenter时,出现了错误。错误信息:无法将密码添加到钥匙串:security: SecKeychainItemCreateFromContent (<default>): User interaction is not allowed.请问是否有任何建议的解决方案? - Hamed

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接