omt-cli 1.6.3 → 1.6.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.codeclimate.yml +8 -0
- data/.gitignore +24 -0
- data/.travis.yml +31 -0
- data/CHANGELOG +188 -0
- data/Gemfile +11 -0
- data/LICENSE.txt +22 -0
- data/README.md +35 -0
- data/Rakefile +10 -0
- data/bin/console +11 -0
- data/bin/fir +14 -0
- data/bin/setup +7 -0
- data/doc/build_apk.md +42 -0
- data/doc/build_ipa.md +66 -0
- data/doc/help.md +34 -0
- data/doc/info.md +44 -0
- data/doc/install.md +65 -0
- data/doc/login.md +19 -0
- data/doc/mapping.md +22 -0
- data/doc/publish.md +35 -0
- data/doc/upgrade.md +7 -0
- data/lib/fir.rb +28 -0
- data/lib/fir/api.yml +13 -0
- data/lib/fir/api.yml.bak +13 -0
- data/lib/fir/cli.rb +195 -0
- data/lib/fir/patches.rb +10 -0
- data/lib/fir/patches/blank.rb +131 -0
- data/lib/fir/patches/concern.rb +146 -0
- data/lib/fir/patches/default_headers.rb +9 -0
- data/lib/fir/patches/hash.rb +79 -0
- data/lib/fir/patches/instance_variables.rb +30 -0
- data/lib/fir/patches/native_patch.rb +28 -0
- data/lib/fir/patches/os_patch.rb +28 -0
- data/lib/fir/patches/try.rb +102 -0
- data/lib/fir/util.rb +87 -0
- data/lib/fir/util/build_apk.rb +76 -0
- data/lib/fir/util/build_common.rb +93 -0
- data/lib/fir/util/build_ipa.rb +240 -0
- data/lib/fir/util/config.rb +42 -0
- data/lib/fir/util/http.rb +30 -0
- data/lib/fir/util/info.rb +39 -0
- data/lib/fir/util/login.rb +18 -0
- data/lib/fir/util/mapping.rb +98 -0
- data/lib/fir/util/me.rb +19 -0
- data/lib/fir/util/parser/apk.rb +43 -0
- data/lib/fir/util/parser/bin/pngcrush +0 -0
- data/lib/fir/util/parser/common.rb +24 -0
- data/lib/fir/util/parser/ipa.rb +188 -0
- data/lib/fir/util/parser/pngcrush.rb +23 -0
- data/lib/fir/util/publish.rb +106 -0
- data/lib/fir/util/publish.rb.bak +185 -0
- data/lib/fir/version.rb +5 -0
- data/lib/fir/xcode_wrapper.sh +29 -0
- data/lib/omt-cli.rb +3 -0
- data/lib/omt_cli.rb +3 -0
- data/omt-cli.gemspec +48 -0
- data/test/build_ipa_test.rb +17 -0
- data/test/cases/test_apk.apk +0 -0
- data/test/cases/test_apk_txt +1 -0
- data/test/cases/test_ipa.ipa +0 -0
- data/test/cases/test_ipa_dsym +0 -0
- data/test/info_test.rb +36 -0
- data/test/login_test.rb +12 -0
- data/test/mapping_test.rb +18 -0
- data/test/me_test.rb +17 -0
- data/test/publish_test.rb +44 -0
- data/test/test_helper.rb +98 -0
- metadata +84 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f99eee99c61258b41e5f1619268be16fa3a7ca03
|
4
|
+
data.tar.gz: 594bc4ebe6a3729f91be1c4e0e47bc6066bf167d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5a2a4631c55c63932d5315364532f4e9a4203913e77a9b2d2eba2814a47b8f37d20349597d8a88bbfb87312e96912e19787a6efee24498a489bdfb225ed48144
|
7
|
+
data.tar.gz: 11cb0a6f4103eff74013ffc0be7a9f79b99c12424718f08b4430ee7c69608839b0718e199cfff540fce6d94e9040c105bf2739161abe6ac105dc358069311a1a
|
data/.codeclimate.yml
ADDED
data/.gitignore
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
/.bundle/
|
2
|
+
/.yardoc
|
3
|
+
/Gemfile.lock
|
4
|
+
/_yardoc/
|
5
|
+
/coverage/
|
6
|
+
/pkg/
|
7
|
+
/spec/reports/
|
8
|
+
/tmp/
|
9
|
+
/fir-cli_tmp/
|
10
|
+
/test/projects
|
11
|
+
*.bundle
|
12
|
+
*.so
|
13
|
+
*.o
|
14
|
+
*.a
|
15
|
+
mkmf.log
|
16
|
+
.tags*
|
17
|
+
*.gem
|
18
|
+
Gemfile.lock
|
19
|
+
.DS_Store
|
20
|
+
/test/cases/*.png
|
21
|
+
/build_apk_example_*
|
22
|
+
/build_ipa_example_*
|
23
|
+
|
24
|
+
.idea/
|
data/.travis.yml
ADDED
@@ -0,0 +1,31 @@
|
|
1
|
+
rvm:
|
2
|
+
- 1.9.2
|
3
|
+
- 1.9.3
|
4
|
+
- 2.0.0
|
5
|
+
- 2.1
|
6
|
+
- 2.2
|
7
|
+
- 2.3
|
8
|
+
- ruby-head
|
9
|
+
- rbx-2
|
10
|
+
- jruby
|
11
|
+
- jruby-head
|
12
|
+
matrix:
|
13
|
+
allow_failures:
|
14
|
+
- rvm: ruby-head
|
15
|
+
- rvm: jruby
|
16
|
+
- rvm: jruby-head
|
17
|
+
- rvm: rbx-2
|
18
|
+
env:
|
19
|
+
matrix:
|
20
|
+
- USE_OFFICIAL_GEM_SOURCE=true
|
21
|
+
global:
|
22
|
+
secure: XiWKHPcQNB/mGv8Q5VuBqETS1bmYZ3t5xJkR/JFHrhWi30O+QWulMM5YjzkVawPjpUS/rtefDEASc4bN+a1iRVi6kf8fxjeKNFAzNc/hEKiPgANELf1JJgGAcz4oygzrH94Vqj90fuf6DoUh9r+IO+Z0PF39GL9GCnUjJeg+zao=
|
23
|
+
notifications:
|
24
|
+
recipients:
|
25
|
+
- hxy@fir.im
|
26
|
+
branches:
|
27
|
+
only:
|
28
|
+
- master
|
29
|
+
addons:
|
30
|
+
code_climate:
|
31
|
+
repo_token: 7158bd5d0218441524b8663790dd28edba8a870387ed000a1b56968e3315af2a
|
data/CHANGELOG
ADDED
@@ -0,0 +1,188 @@
|
|
1
|
+
## 更新记录
|
2
|
+
|
3
|
+
### fir-cli 1.6.2.1
|
4
|
+
- 修正解压 android apk warning 的问题
|
5
|
+
|
6
|
+
### fir-cli 1.6.2
|
7
|
+
- 修正检查 xcodeproj 的问题
|
8
|
+
|
9
|
+
### fir-cli 1.6.1
|
10
|
+
- 修正 exportOptionsPlist 路径问题
|
11
|
+
|
12
|
+
### fir-cli 1.6.0
|
13
|
+
- 支持 XCode 8.3 打包
|
14
|
+
* 新增参数 -E,指定 exportOptionsPlist plist 文件中的方法, 默认为 ad-hoc
|
15
|
+
* 新增参数 -O, 用户可自定义 -exportOptionsPlist 中的 plist 路径
|
16
|
+
|
17
|
+
### fir-cli 1.5.0
|
18
|
+
- 取消 --open 默认值
|
19
|
+
|
20
|
+
### fir-cli 1.4.9
|
21
|
+
- 修正 --password 与 --open 冲突的问题
|
22
|
+
|
23
|
+
### fir-cli 1.4.8
|
24
|
+
- 修正 build 后直接 -p 发布的权限错误
|
25
|
+
|
26
|
+
### fir-cli 1.4.7
|
27
|
+
- 增加 build_ipa 中的 destination 参数
|
28
|
+
|
29
|
+
### fir-cli 1.4.6
|
30
|
+
- 上传增加设置密码及公开访问权限的参数, [Issue #62](https://github.com/FIRHQ/fir-cli/issues/62)
|
31
|
+
- 打包增加指定 `exportProvisioningProfile` 参数, [Issue #59](https://github.com/FIRHQ/fir-cli/issues/59)
|
32
|
+
- 增加 http retry 机制, [Issue #65](https://github.com/FIRHQ/fir-cli/issues/65)
|
33
|
+
|
34
|
+
### fir-cli 1.4.5
|
35
|
+
- 增加 Android flavor 打包(感谢 [msdx](https://github.com/msdx) 的热心帮助)
|
36
|
+
- `$ fir ba <project dir> -f <flavor>`
|
37
|
+
|
38
|
+
### fir-cli 1.4.4
|
39
|
+
- Publish 时候增加 app 相关信息
|
40
|
+
|
41
|
+
### fir-cli 1.4.3
|
42
|
+
- 修复 @build_cmd 中的输出显示, 使用 `$?` 获取 Process::Status
|
43
|
+
|
44
|
+
### fir-cli 1.4.2
|
45
|
+
- 修复手动提交 zip 格式符号表文件报错的 bug
|
46
|
+
|
47
|
+
### fir-cli 1.4.1
|
48
|
+
- 支持远程 git 项目打包编译
|
49
|
+
|
50
|
+
### fir-cli 1.4.0
|
51
|
+
- 使用 cli 转换 icon 后不再回调后台 icon 转换器
|
52
|
+
|
53
|
+
### fir-cli 1.3.9
|
54
|
+
- 修正 build 后生成多个 dsym 文件导致上传 bughd 失败的 bug
|
55
|
+
|
56
|
+
### fir-cli 1.3.8
|
57
|
+
- 增加安卓打包生成路径
|
58
|
+
|
59
|
+
### fir-cli 1.3.7
|
60
|
+
- 支持直接从文件读取 changelog
|
61
|
+
|
62
|
+
### fir-cli 1.3.6
|
63
|
+
- 增加自定义 build 后 ipa, apk 的 name
|
64
|
+
|
65
|
+
### fir-cli 1.3.5
|
66
|
+
- 修复转换 icon 的 bug
|
67
|
+
|
68
|
+
### fir-cli 1.3.4
|
69
|
+
- 上传增加 distribution_name 信息
|
70
|
+
|
71
|
+
### fir-cli 1.3.3
|
72
|
+
- 修正解析 inhouse 错误的现象
|
73
|
+
|
74
|
+
### fir-cli 1.3.2
|
75
|
+
- 支持打包提供 app watch 的应用
|
76
|
+
|
77
|
+
### fir-cli 1.3.1
|
78
|
+
- 暂时修复多个 target 的 build 打包 app 的 bug
|
79
|
+
|
80
|
+
### fir-cli 1.3.0
|
81
|
+
- 去掉 build multi apps 的限制
|
82
|
+
|
83
|
+
### fir-cli 1.2.9
|
84
|
+
- 修复指定 output_path 后, publish 默认查找第一个 app 的 bug
|
85
|
+
- 暂时不支持 build multi apps
|
86
|
+
|
87
|
+
### fir-cli 1.2.8
|
88
|
+
- 统一 build 后, ipa 和 dSYM 文件的命名
|
89
|
+
|
90
|
+
### fir-cli 1.2.7
|
91
|
+
- publish 时增加更多信息
|
92
|
+
|
93
|
+
### fir-cli 1.2.6
|
94
|
+
- 增加导出二维码功能
|
95
|
+
- 使用 `fir p <app file path> -Q`
|
96
|
+
- 或者 `fir bi(ba) <project dir> -p -Q` 即可导出当前 app 的二维码图片
|
97
|
+
|
98
|
+
### fir-cli 1.2.5
|
99
|
+
- 修正解析 ipa 时候 `NoMethodError` 异常
|
100
|
+
|
101
|
+
### fir-cli 1.2.4
|
102
|
+
- 修正 `version` 的 bug
|
103
|
+
|
104
|
+
### fir-cli 1.2.3
|
105
|
+
- 修正 `build_apk` 无法找到 apk 的 bug
|
106
|
+
- build 完毕后, ipa 和 apk 均以 $name-$version-Build-$build 形式命名
|
107
|
+
|
108
|
+
### fir-cli 1.2.2
|
109
|
+
- 修正不同系统非 UTF-8 编码问题
|
110
|
+
|
111
|
+
### fir-cli 1.2.1
|
112
|
+
- fix #12, 去掉 fir-cli_tmp 目录
|
113
|
+
|
114
|
+
### fir-cli 1.2.0
|
115
|
+
- 支持 zip 符号表文件上传
|
116
|
+
|
117
|
+
### fir-cli 1.1.9
|
118
|
+
- 修改显示上的一些小问题
|
119
|
+
|
120
|
+
### fir-cli 1.1.8
|
121
|
+
- 支持 gradle 打包 apk 文件并自动上传至 fir.im, `fir build_apk(alias ba)`
|
122
|
+
- `fir ba <project dir> [-o <apk output dir> -c <changelog> -p -T <your api token>]`
|
123
|
+
|
124
|
+
### fir-cli 1.1.7
|
125
|
+
- 增加符号表上传指令, `fir mapping(alias m)`
|
126
|
+
- 有以下三种方式上传符号表(目前已经支持 dSYM 和 txt 两种格式的符号表文件上传)
|
127
|
+
- 1. 指定 version 和 build 上传: `fir m <mapping file path> -P <bughd project id> -v <app version> -b <app build> -T <your api token>`
|
128
|
+
- 2. 在 publish 的时候自动上传: `fir p <app file path> -m <mapping file path> -P <bughd project id> -T <your api token>`
|
129
|
+
- 3. 在 build_ipa 的时候自动上传: `fir b <project dir> -P <bughd project id> -M -p -T <your api token>`
|
130
|
+
|
131
|
+
### fir-cli 1.1.6
|
132
|
+
- 不再转换 icon
|
133
|
+
|
134
|
+
### fir-cli 1.1.5
|
135
|
+
- 增加团队成员直接上传 app
|
136
|
+
|
137
|
+
### fir-cli 1.1.4
|
138
|
+
- 增加 `fir me` 指令查看当前登录用户
|
139
|
+
|
140
|
+
### fir-cli 1.1.3
|
141
|
+
- 增加 Travis.ci
|
142
|
+
|
143
|
+
### fir-cli 1.1.1
|
144
|
+
- android app 不转换 icon
|
145
|
+
|
146
|
+
### fir-cli 1.1.0
|
147
|
+
- 完全兼容新版 API
|
148
|
+
- 请使用新版 API Token
|
149
|
+
|
150
|
+
### fir-cli 1.0
|
151
|
+
- 重大重构
|
152
|
+
- 优化启动及运行速度
|
153
|
+
- 增加各指令的 alias
|
154
|
+
- 增加全局参数, -T, -L, -V, -q, -h, 分别为 token, log, verbose, quite, help 参数
|
155
|
+
- 增加输出 log
|
156
|
+
- 修正部分系统安装失败问题
|
157
|
+
- 修正部分服务器安装出现编码失败问题
|
158
|
+
- 修正 ipa 路径带有空格解析失败的 bug
|
159
|
+
- 重写 ipa 解析器, 去除 `miniz.c`, 增加 pngcrash
|
160
|
+
- 上传 ipa 时, 优先取 `display_name` 作为应用名称
|
161
|
+
- build_ipa 增加默认 build 路径, `fir b` 则默认 build 当前路径
|
162
|
+
- build_ipa 增加输出 dSYM 符号表文件
|
163
|
+
- build_ipa 增加输出指定 ipa 名称
|
164
|
+
- build_ipa 增加输出 xcodebuild 的信息
|
165
|
+
- 去掉输出信息颜色, 方便查看 log
|
166
|
+
- 简化 --verbose 参数, 简化为 `--verbose --no-verbose`, 默认输出为 INFO
|
167
|
+
- https://github.com/FIRHQ/fir-cli
|
168
|
+
|
169
|
+
### fir-cli 0.2.3
|
170
|
+
- 去除重签名功能, iOS 8.1.3 之后不支持重签名
|
171
|
+
|
172
|
+
### fir-cli 0.2.2
|
173
|
+
- 修复 WARNING: The rest_client gem is deprecated
|
174
|
+
|
175
|
+
### fir-cli 0.2.1
|
176
|
+
- 修正解析带空格的文件出租哦问题
|
177
|
+
|
178
|
+
### fir-cli 0.2.0
|
179
|
+
- 新指令 `build_ipa`
|
180
|
+
|
181
|
+
### fir-cli 0.1.8
|
182
|
+
- 支持 ruby 1.9.x
|
183
|
+
- 规范输出参数选项,支持无颜色信息输出
|
184
|
+
-`--verbose=v|vv|vvv`:设置输出级别
|
185
|
+
-`--quiet` 与 `--no-quiet`:设置是否不输出辅助信息
|
186
|
+
-`--color` 与 `--no-color`:设置输出是否携带颜色信息
|
187
|
+
- 修复 ipa 应用图标不清晰问题
|
188
|
+
- 增加切换配置文件功能:使用此功能可以在多个用户中切换使用
|
data/Gemfile
ADDED
@@ -0,0 +1,11 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
if ENV['USE_OFFICIAL_GEM_SOURCE']
|
3
|
+
source 'https://rubygems.org'
|
4
|
+
else
|
5
|
+
source 'https://ruby.taobao.org'
|
6
|
+
end
|
7
|
+
|
8
|
+
# Specify your gem's dependencies in fir.gemspec
|
9
|
+
gemspec
|
10
|
+
|
11
|
+
gem 'codeclimate-test-reporter', group: :test, require: nil
|
data/LICENSE.txt
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
Copyright (C) 2015 Fly It Remotely LLC. <http://fir.im/>
|
2
|
+
|
3
|
+
MIT License
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
6
|
+
a copy of this software and associated documentation files (the
|
7
|
+
"Software"), to deal in the Software without restriction, including
|
8
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
9
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
10
|
+
permit persons to whom the Software is furnished to do so, subject to
|
11
|
+
the following conditions:
|
12
|
+
|
13
|
+
The above copyright notice and this permission notice shall be
|
14
|
+
included in all copies or substantial portions of the Software.
|
15
|
+
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
18
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
19
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
20
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
21
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
22
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,35 @@
|
|
1
|
+
✈ fir.im-cli
|
2
|
+
----
|
3
|
+
|
4
|
+
![Build Status Images](https://travis-ci.org/FIRHQ/fir-cli.svg)
|
5
|
+
[![Code Climate](https://codeclimate.com/github/FIRHQ/fir-cli/badges/gpa.svg)](https://codeclimate.com/github/FIRHQ/fir-cli)
|
6
|
+
[![Test Coverage](https://codeclimate.com/github/FIRHQ/fir-cli/badges/coverage.svg)](https://codeclimate.com/github/FIRHQ/fir-cli/coverage)
|
7
|
+
[![Gem Version](https://badge.fury.io/rb/fir-cli.svg)](http://badge.fury.io/rb/fir-cli)
|
8
|
+
[![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/FIRHQ/fir-cli?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
|
9
|
+
[![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://raw.githubusercontent.com/FIRHQ/fir-cli/master/LICENSE.txt)
|
10
|
+
|
11
|
+
fir.im-cli 可以通过指令查看, 上传, 编译 iOS/Android 应用.
|
12
|
+
|
13
|
+
![fir-cli](http://7rf35s.com1.z0.glb.clouddn.com/fir-cli-new.gif)
|
14
|
+
|
15
|
+
## 文档
|
16
|
+
|
17
|
+
- [安装及常见安装问题](https://github.com/FIRHQ/fir-cli/blob/master/doc/install.md)
|
18
|
+
- [fir help 相关指令帮助](https://github.com/FIRHQ/fir-cli/blob/master/doc/help.md)
|
19
|
+
- [fir info 查看 ipa/apk 信息](https://github.com/FIRHQ/fir-cli/blob/master/doc/info.md)
|
20
|
+
- [fir login & fir me 登录相关](https://github.com/FIRHQ/fir-cli/blob/master/doc/login.md)
|
21
|
+
- [fir publish 发布应用到 fir.im](https://github.com/FIRHQ/fir-cli/blob/master/doc/publish.md)
|
22
|
+
- [fir build_ipa 编译打包 ipa 文件](https://github.com/FIRHQ/fir-cli/blob/master/doc/build_ipa.md)
|
23
|
+
- [fir build_apk 编译打包 apk 文件](https://github.com/FIRHQ/fir-cli/blob/master/doc/build_apk.md)
|
24
|
+
- [fir mapping 上传符号表至 BugHD.com](https://github.com/FIRHQ/fir-cli/blob/master/doc/mapping.md)
|
25
|
+
- [fir upgrade 升级相关](https://github.com/FIRHQ/fir-cli/blob/master/doc/upgrade.md)
|
26
|
+
|
27
|
+
## 提交反馈
|
28
|
+
|
29
|
+
直接使用 Github 的 [Issue](https://github.com/FIRHQ/fir-cli/issues) 即可.
|
30
|
+
|
31
|
+
## 捐赠支持
|
32
|
+
|
33
|
+
如果你觉得 fir-cli 对你有所帮助, 欢迎微信打赏支持作者:smile:
|
34
|
+
|
35
|
+
![](http://7rf35s.com1.z0.glb.clouddn.com/coffee.png)
|
data/Rakefile
ADDED
data/bin/console
ADDED
@@ -0,0 +1,11 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# encoding: utf-8
|
3
|
+
|
4
|
+
require 'bundler/setup'
|
5
|
+
require 'fir'
|
6
|
+
|
7
|
+
# You can add fixtures and/or initialization code here to make experimenting
|
8
|
+
# with your gem easier. You can also use a different console, if you like.
|
9
|
+
|
10
|
+
require 'pry'
|
11
|
+
Pry.start
|
data/bin/fir
ADDED
data/bin/setup
ADDED
data/doc/build_apk.md
ADDED
@@ -0,0 +1,42 @@
|
|
1
|
+
#### fir build_apk
|
2
|
+
|
3
|
+
`fir build_apk` 指令用于编译用 Gradle 打包 apk, 并且支持直接从 Github/Gitlab 相关 repo 直接编译打包.
|
4
|
+
|
5
|
+
```sh
|
6
|
+
fir build_apk --help
|
7
|
+
Usage:
|
8
|
+
fir build_apk BUILD_DIR
|
9
|
+
|
10
|
+
Options:
|
11
|
+
-B, [--branch=BRANCH] # Set branch if project is a git repo, the default is `master`
|
12
|
+
-o, [--output=OUTPUT] # APK output path, the default is: BUILD_DIR/build/outputs/apk
|
13
|
+
-p, [--publish], [--no-publish] # true/false if publish to fir.im
|
14
|
+
-f, [--flavor=FLAVOR] # Set flavor if have productFlavors
|
15
|
+
-s, [--short=SHORT] # Set custom short link if publish to fir.im
|
16
|
+
-n, [--name=NAME] # Set custom apk name when builded
|
17
|
+
-c, [--changelog=CHANGELOG] # Set changelog if publish to fir.im, support string/file
|
18
|
+
-Q, [--qrcode], [--no-qrcode] # Generate qrcode
|
19
|
+
[--open], [--no-open] # true/false if open for everyone, the default is: true
|
20
|
+
# Default: true
|
21
|
+
[--password=PASSWORD] # Set password for app
|
22
|
+
-T, [--token=TOKEN] # User's API Token at fir.im
|
23
|
+
-L, [--logfile=LOGFILE] # Path to writable logfile
|
24
|
+
-V, [--verbose], [--no-verbose] # Show verbose
|
25
|
+
# Default: true
|
26
|
+
-q, [--quiet], [--no-quiet] # Silence commands
|
27
|
+
-h, [--help], [--no-help] # Show this help message and quit
|
28
|
+
```
|
29
|
+
|
30
|
+
```sh
|
31
|
+
# 简单打包
|
32
|
+
$ fir build_apk path/to/project
|
33
|
+
|
34
|
+
# 打包并上传
|
35
|
+
$ fir ba <project dir> [-o <apk output dir> -c <changelog> -p -Q -T <your api token>]
|
36
|
+
|
37
|
+
# 打包指定的 flavor
|
38
|
+
$ fir ba <project dir> [-f <flavor> -o <apk output dir> -c <changelog> -p -Q -T <your api token>]
|
39
|
+
|
40
|
+
# 打包指定的 git branch
|
41
|
+
$ fir ba <git ssh url> [-B develop -o <apk output dir> -c <changelog> -p -Q -T <your api token>]
|
42
|
+
```
|
data/doc/build_ipa.md
ADDED
@@ -0,0 +1,66 @@
|
|
1
|
+
### fir build_ipa
|
2
|
+
|
3
|
+
`fir build_ipa` 对 `xcodebuild` 原生指令进行了封装, 将常用的参数名简化, 支持全部的自带参数及设置, 同时输出符号表 dSYM 文件, 并且支持直接从 Github/Gitlab 相关 repo 直接编译打包.
|
4
|
+
|
5
|
+
```sh
|
6
|
+
$ fir build_ipa --help
|
7
|
+
fir build_ipa --help
|
8
|
+
Usage:
|
9
|
+
fir build_ipa BUILD_DIR [options] [settings]
|
10
|
+
|
11
|
+
Options:
|
12
|
+
-B, [--branch=BRANCH] # Set branch if project is a git repo, the default is `master`
|
13
|
+
-w, [--workspace], [--no-workspace] # true/false if build workspace
|
14
|
+
-S, [--scheme=SCHEME] # Set the scheme NAME if build workspace
|
15
|
+
-C, [--configuration=CONFIGURATION] # Use the build configuration NAME for building each target
|
16
|
+
-d, [--destination=DESTINATION] # Set the destinationspecifier
|
17
|
+
-t, [--target=TARGET] # Build the target specified by targetname
|
18
|
+
-E, [--export_method=METHOD] # for exportOptionsPlist method, ad-hoc as default
|
19
|
+
-O, [--optionPlistPath] # User defined exportOptionsPlist path
|
20
|
+
-f, [--profile=PROFILE] # Set the export provisioning profile
|
21
|
+
-o, [--output=OUTPUT] # IPA output path, the default is: BUILD_DIR/fir_build_ipa
|
22
|
+
-p, [--publish], [--no-publish] # true/false if publish to fir.im
|
23
|
+
-s, [--short=SHORT] # Set custom short link if publish to fir.im
|
24
|
+
-n, [--name=NAME] # Set custom ipa name when builded
|
25
|
+
-c, [--changelog=CHANGELOG] # Set changelog if publish to fir.im
|
26
|
+
-Q, [--qrcode], [--no-qrcode] # Generate qrcode
|
27
|
+
-M, [--mapping], [--no-mapping] # true/false if upload app mapping file to BugHD.com
|
28
|
+
-P, [--proj=PROJ] # Project id in BugHD.com if upload app mapping file
|
29
|
+
[--open], [--no-open] # true/false if open for everyone, the default is: true
|
30
|
+
# Default: true
|
31
|
+
[--password=PASSWORD] # Set password for app
|
32
|
+
-T, [--token=TOKEN] # User's API Token at fir.im
|
33
|
+
-L, [--logfile=LOGFILE] # Path to writable logfile
|
34
|
+
-V, [--verbose], [--no-verbose] # Show verbose
|
35
|
+
# Default: true
|
36
|
+
-q, [--quiet], [--no-quiet] # Silence commands
|
37
|
+
-h, [--help], [--no-help] # Show this help message and quit
|
38
|
+
```
|
39
|
+
|
40
|
+
示例:
|
41
|
+
|
42
|
+
- 编译 project, 加上 changelog, 并发布到 fir.im 上并生成二维码图片
|
43
|
+
|
44
|
+
```
|
45
|
+
$ fir build_ipa path/to/project -o path/to/output -p -c "this is changelog" -Q -T YOUR_API_TOKEN
|
46
|
+
```
|
47
|
+
|
48
|
+
- 编译 Github 上的 workspace
|
49
|
+
|
50
|
+
```sh
|
51
|
+
$ fir build_ipa git@github.com:xxxx.git -o path/to/output -w -C Release -t allTargets GCC_PREPROCESSOR_DEFINITIONS="FOO=bar"
|
52
|
+
```
|
53
|
+
该指令在指向的目录中,找到第一个 workspace 文件, 对其进行编译. 使用 `Release` 设置,编译策略为 `allTargets`, 同时设置了预编译参数 `FOO`.
|
54
|
+
|
55
|
+
- 编译用 CocoaPods 做依赖管理的 .ipa 包
|
56
|
+
|
57
|
+
```sh
|
58
|
+
$ fir build_ipa path/to/workspace -w -S <scheme name>
|
59
|
+
```
|
60
|
+
|
61
|
+
|
62
|
+
**ChangeLog 1.6.0**
|
63
|
+
|
64
|
+
- 支持 XCode 8.3 打包
|
65
|
+
* 新增参数 -E,指定 exportOptionsPlist plist 文件中的方法, 默认为 ad-hoc
|
66
|
+
* 用户可自定义 -exportOptionsPlist 中的 plist 路径
|