You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Jenkins任务中一次性上传3个ipa文件到diawi并将链接附在构建后可编辑邮件中

可行实现方案

以下是3种经过验证的落地方式,你可以根据自己团队的技术栈和Jenkins配置习惯选择:

方案1:Diawi API + Jenkins Pipeline 脚本实现(灵活度最高)

  • 前置准备:提前把你的Diawi API token存入Jenkins凭据管理,不要硬编码在脚本中避免泄露
  • 操作步骤:
    1. 构建阶段生成3个ipa文件后,在Pipeline中定义ipa路径数组,示例:def ipaList = ["./build/uat.ipa", "./build/prod.ipa", "./build/beta.ipa"]
    2. 遍历数组逐个调用Diawi上传接口,Shell、Python都可以实现调用,Shell示例逻辑:
    # 遍历每个ipa上传,存储返回的URL到变量
    DIAWI_URLS=()
    for ipa in ${ipaList[@]}; do
      # 调用Diawi公开上传接口,传入token、ipa文件等参数,解析返回结果得到访问URL
      upload_result=$(curl -s -F token=${DIAWI_TOKEN} -F file=@${ipa})
      # 解析结果拿到URL后追加到数组
      DIAWI_URLS+=($(echo ${upload_result} | jq -r '.url'))
    done
    
    1. 把拿到的3个URL写入Jenkins构建环境变量,或者直接存到工作区的临时文件diawi_urls.txt中
    2. 安装Jenkins邮件扩展插件,自定义邮件模板,直接引用环境变量或者读取diawi_urls.txt的内容插入到邮件正文即可,支持自定义HTML排版区分不同ipa的用途。

方案2:Jenkins Diawi 上传插件 + 可视化配置(无代码要求)

  • 前置准备:在Jenkins插件市场安装Diawi上传插件,全局配置好Diawi API token
  • 操作步骤:
    1. 在构建后操作中添加3次Diawi上传步骤,分别选择3个对应的ipa文件,配置每个上传步骤的输出URL对应不同的环境变量,比如UAT_IPA_URL、PROD_IPA_URL、BETA_IPA_URL
    2. 同样配置邮件扩展插件,在邮件内容的编辑框中直接引用上面配置的环境变量即可,不需要自行开发上传逻辑,适合不想维护脚本的场景。

方案3:本地封装上传脚本 + Jenkins 集成(调试成本最低)

  • 前置准备:提前在本地写好批量上传3个ipa的脚本(支持Shell、Python等任意语言),脚本可以直接在本地调试正常运行
  • 操作步骤:
    1. Jenkins构建完成生成ipa后,直接执行本地封装好的上传脚本,传入3个ipa的路径作为参数,脚本上传完成后把3个URL按约定格式写入工作区的临时文件
    2. 构建后读取临时文件的内容,直接插入到通知邮件的正文中即可,这种方式的上传逻辑和Jenkins解耦,本地调试没问题的话Jenkins上基本不会出问题。

通用注意事项

  • 上传时可以给每个ipa设置自定义备注,标注版本号、适用场景等信息,方便邮件收件人快速区分不同ipa的用途
  • 如果ipa设置了访问密码,记得把密码也同步放到邮件中,避免收件人无法访问
  • 建议添加上传异常判断逻辑,只要有一个ipa上传失败就标记构建异常,避免发送内容不全的通知邮件

内容的提问来源于stack exchange,提问作者Ramprasad

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 14:45:04