使用Fastlane在GitHub Actions发布Flutter项目到蒲公英超时求助
解决Fastlane发布蒲公英超时(Errno::ETIMEDOUT)问题
可行解决方案
1. 自定义超时时间
fastlane的pgyer插件支持手动设置超时参数,在pgyer动作中添加timeout字段,延长超时阈值,比如设置3000秒(50分钟):
gym pgyer( api_key: ENV['PGY_API_KEY'], timeout: 3000 )
2. 优化GitHub Runner网络环境
- 若使用GitHub托管的runner,可切换到自托管runner,优先选择国内服务器部署,降低跨境网络波动影响。
- 在Workflow的发布步骤前,新增网络连通性测试,确认和蒲公英服务器的链路正常:
- name: Check pgyer connection run: curl -I https://www.pgyer.com
3. 压缩Flutter构建包体积
过大的安装包会拉长上传时间,触发超时:
- 构建时开启代码混淆与资源压缩:执行
flutter build --release --obfuscate --split-debug-info=./debug-info生成更小的包体。 - 清理项目中无用的依赖、资源文件,减少包体积。
4. 升级fastlane及pgyer插件
当前使用的fastlane v2.206.2可能存在已知网络兼容问题,升级到最新版本:
# 升级fastlane gem update fastlane # 升级pgyer插件 fastlane update_plugin pgyer
在GitHub Actions的Workflow中,确保安装环节拉取最新版本:
- name: Install fastlane run: gem install fastlane --no-document - name: Add pgyer plugin run: fastlane add_plugin pgyer
5. 手动上传验证包体合法性
先在本地完成构建,手动将包上传到蒲公英平台:
- 若手动上传也超时,说明是包体积过大或蒲公英服务器临时故障;
- 若手动上传正常,再聚焦排查GitHub Actions与fastlane的配置问题。
内容的提问来源于stack exchange,提问作者Dolphin
相关产品推荐
相关产品推荐

