Skip to content

fastlane移植到Linux平台,所有的签名和多仓库证书管理都在Linux上完成,证书可以云同步至aws或minio,适合做超级签系统,提供cmd让Java或go调用,可以配置N个苹果账号,默认是P8私钥认证有问题时切换为两步验证(短信验证码,token可以保存1个月),选择好策略不用担心掉签问题

License

Notifications You must be signed in to change notification settings

wood911/fastlane-onLinux

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

fastlane-onLinux

fastlane移植到Linux平台,所有的签名和多仓库证书管理都在Linux上完成,证书可以云同步至aws或minio,适合做超级签系统,提供cmd让Java或go调用,可以配置N个苹果账号,默认是P8私钥认证有问题时切换为两步验证(短信验证码,token可以保存1个月),选择好策略不用担心掉签问题

Linux安装fastlane时不要安装官方的,直接安装这个fastlane版本,也可以同步官方更新 复制resign目录到用户目录,配置account.json .env 等配置文件,运行打包命令cmd 细节参考项目中PDF文档

https://github.com/wood911/fastlane-server-and-web


流程简介

1. 公司内网开发机(Mac)

安装好Jenkins,配置好xcode和Android、fastlane环境,通过fastlane上传ipa/apk到app-sign-server
在开发机上安装Jenkins自行Google,从git上clone你的iOS/Android项目到本地,在项目根目录中配置好fastlane脚本。 这是iOS和Android项目的完整配置,可以下载下来根据自己的需要修改
fastlane-ios-config (ios部分配置预览)
fastlane-android-config (android部分配置预览)

超级签系统实现细节

2. app-sign-server(java-web服务)

把app-sign-server部署到外网Linux上,这个Java-web服务负责上传接口、接收苹果回调过来的udid记录下来并签名第一步上传过来的ipa

3. index-html(呈现给用户下载的页面)

这是一个react-html项目,也是部署到外网Linux上(最好和app-sign-server同一台),Nginx代理后打开可以看到第一步中上传的ios/android下载页。 iOS扫码打开显示iOS项目,Android扫码打开显示Android项目,PC打开可以看到所有的。其中iOS设备安装扫码会提示你安装描述文件,安装后获取udid, 苹果会回调给app-sign-server,接着就会调用fastlane-onLinux服务对IPA重新签名,签名完成后重定向到下载页iOS设备就可以安装了

4. fastlane-onLinux(linux上可以跑的fastlane)

参考:https://github.com/wood911/fastlane-onLinux

如果需要集群的话,证书需要通过 AWS / minion / Aliyun 实现同步管理,如下是minion实现(AWS兼容minio)

参考:https://github.com/wood911/fastlane-server-and-web

警告⚠️:仅仅用于研究学习


Twitter: @FastlaneTools License Gem Homebrew Build Status PRs welcome!

fastlane is a tool for iOS and Android developers to automate tedious tasks like generating screenshots, dealing with provisioning profiles, and releasing your application.


✨ All fastlane docs were moved to docs.fastlane.tools


Need Help?

Before submitting a new GitHub issue, please make sure to

If the above doesn't help, please submit an issue on GitHub and provide information about your setup, in particular the output of the fastlane env command.

Note: If you want to report a regression in fastlane (something that has worked before, but broke with a new release), please mark your issue title as such using [Regression] Your title here. This enables us to quickly detect and fix regressions.

fastlane team

Jimmy Dee

Special thanks to all contributors for extending and improving fastlane.

Contribute to fastlane

Check out CONTRIBUTING.md for more information on how to help with fastlane.

Code of Conduct

Help us keep fastlane open and inclusive. Please read and follow our Code of Conduct.

Metrics

fastlane tracks a few key metrics to understand how developers are using the tool and to help us know what areas need improvement. No personal/sensitive information is ever collected. Metrics that are collected include:

  • The number of fastlane runs
  • A salted hash of the app identifier or package name, which helps us anonymously identify unique usage of fastlane

You can easily opt-out of metrics collection by adding opt_out_usage at the top of your Fastfile or by setting the environment variable FASTLANE_OPT_OUT_USAGE. Check out the metrics code on GitHub

License

This project is licensed under the terms of the MIT license. See the LICENSE file.

This project and all fastlane tools are in no way affiliated with Apple Inc. This project is open source under the MIT license, which means you have full access to the source code and can modify it to fit your own needs. All fastlane tools run on your own computer or server, so your credentials or other sensitive information will never leave your own computer. You are responsible for how you use fastlane tools.


✨ All fastlane docs were moved to docs.fastlane.tools


About

fastlane移植到Linux平台,所有的签名和多仓库证书管理都在Linux上完成,证书可以云同步至aws或minio,适合做超级签系统,提供cmd让Java或go调用,可以配置N个苹果账号,默认是P8私钥认证有问题时切换为两步验证(短信验证码,token可以保存1个月),选择好策略不用担心掉签问题

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published