写iOS的都知道,经常需要维护一些podspec
私有库,每次手动上传打tag
太麻烦,今天给大家分享一个我最近写的自动上传podspec
文件的python
脚本。
(之前是用shell
写的,最近在玩python
,顺便花个5分钟撸一个出来,最后发现比用shell
写省了好多代码,可读性也比shell
强太多。)
内容
自动化脚本包含以下内容:
- 自动提交与上传代码
- 根据podspec文件正则匹配tag,并push git tag到远端
- 自动根据upload.ini文件添加commit信息及tag更新说明
- lint本地的podspec文件正确性
- push本地的podspec文件至指定的远端地址
用法
- 在
xxx.podspec
中指定s.version
对应的版本,若为Binary
二进制版本则需要在版本后加.Binary
(例如:1.5.0.Binary) - 新增
upload.ini
版本更新说明 - 修改
upload.py
文件信息
spec_path = './iMetisSDK.podspec'
spec_name = 'iMetisSDK.podspec'
specs_name = 'AIjiaSpecs'
source_specs_url = 'ssh://git@gitlab.263nt.com:2200/italkbbspecs/italkbbspecs.git'
config_ini_path = './upload.ini'
gitlab_remote = 'origin'
gitlab_ref = 'master'
gitlab_proj_id = 19
gitlab_user_access_token = 'KLRVtbPLihP6eug-i7-d' # 'qWXXuozFKgcDjCUWz26x'
gitlab_api_url = 'https://gitlab.263nt.com/api/v4/projects/%d/releases' % gitlab_proj_id
- 授权并执行脚本即可
chmod 777 upload.py
python3 upload.py
代码地址
upload_podspec (喜欢的朋友给点个star)