fir-cli 2.0.3.alpha → 2.0.3.beta
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +9 -2
- data/fir-cli.gemspec +3 -9
- data/lib/fir/cli.rb +2 -0
- data/lib/fir/util/publish.rb +22 -6
- data/lib/fir/version.rb +1 -1
- metadata +25 -13
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 36634b61af92921d7eb88d6f7e6a1673c976007a2a1d391515d1cb3de34a2365
|
|
4
|
+
data.tar.gz: 610babac6a88c166a99d802eb157b7c0162c2a989af17d733e5ef1821b453a76
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: efe557c5b8026643f21050914963e9a732732d13b9247260d7e74f4cf53ba6a9e38871d7248aaba29c50015b3998bb7013d9b5a8b62aa737c531cb6df2b89d42
|
|
7
|
+
data.tar.gz: 364b26b9464b9757b2034718a7672ecef9c349b98b1394e1186c14d192987d103d9308e71fce3a2072c94b2f542bf1e15eb62d4bd420dbc278c564e7ffe008b1
|
data/README.md
CHANGED
|
@@ -14,7 +14,9 @@ fir.im-cli 可以通过指令查看, 上传, iOS/Android 应用.
|
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
# 最近更新
|
|
17
|
-
- (2.0.3.
|
|
17
|
+
- (2.0.3.beta) 增加 dingtalk_at_phones, 钉钉通知可 at 用户手机号, 以逗号,分割. 此命令需配合 `dingtalk_access_token` 使用
|
|
18
|
+
- (2.0.3.beta) 增加 dingtalk_at_all, 钉钉通知可 at 所有人, 此命令需配合 `dingtalk_access_token` 使用
|
|
19
|
+
- (2.0.3.alpha) 增加海外加速参数 --oversea_turbo, 需要使用该功能的小伙伴请微信联系我, 我来开通
|
|
18
20
|
- (2.0.2) 有限支持 aab 文件上传, 强依赖 `bundletool` 工具, 具体请参见参数 `--bundletool_jar_path` 和 `--auto_download_bundletool_jar`
|
|
19
21
|
- (2.0.1) publish 支持 新参数 `specify_app_display_name`, 指定 app 显示名称
|
|
20
22
|
- (2.0.1) publish 支持 新参数 `need_ansi_qrcode`, 在控制台直接打印二维码, jenkins 用户可能需要使用 `AnsiColor Plugin` 插件配合
|
|
@@ -35,9 +37,14 @@ fir.im-cli 可以通过指令查看, 上传, iOS/Android 应用.
|
|
|
35
37
|
|
|
36
38
|
### 在 Circle CI, Travis CI 或 Github Actions 等境外服务上, 有概率超时, 能否解决?
|
|
37
39
|
|
|
40
|
+
2.0.3 版本 及其以上, 可以申请海外加速内测资格, 开启后可以使用海外加速上传
|
|
41
|
+
|
|
42
|
+
|
|
38
43
|
由于监管要求, 我们必须将服务于存储放置在境内. 由于众所周知的原因, 国内外连通性的表现不太好, 虽然我们的存储服务商 阿里云 提供了 OSS 境外加速服务, 但是高达 1.25 元/GB 的传输成本确实我们也没办法负担.
|
|
39
44
|
|
|
40
|
-
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
目前我们提供三种临时解决方案来缓解问题(2.0.2以下版本):
|
|
41
48
|
|
|
42
49
|
1. 设置较长的超时时间 如 `FIR_TIMEOUT=300 fir publish xxxx`, 则可将超时时间设置为 300 秒.
|
|
43
50
|
2. 如果fir-cli 版本 >= 2.0.0, 也可在出现超时后, 使用 `--switch-to-qiniu` 来切换到我们的另外一条存储线路. 如 `fir publish xxxx.apk --switch-to-qiniu`, 多一条线路备选.
|
data/fir-cli.gemspec
CHANGED
|
@@ -27,6 +27,8 @@ Gem::Specification.new do |spec|
|
|
|
27
27
|
/_/ /___/_/ |_| \____/_____/___/
|
|
28
28
|
|
|
29
29
|
## 更新记录
|
|
30
|
+
- (2.0.3.beta) 增加 dingtalk_at_phones, 钉钉通知可 at 用户手机号, 以逗号,分割. 此命令需配合 `dingtalk_access_token` 使用
|
|
31
|
+
- (2.0.3.beta) 增加 dingtalk_at_all, 钉钉通知可 at 所有人, 此命令需配合 `dingtalk_access_token` 使用
|
|
30
32
|
- (2.0.3.alpha) publish 增加海外加速参数 --oversea_turbo
|
|
31
33
|
- (2.0.2) 有限支持 aab 文件上传, 强依赖`bundletool`工具, 具体请参见参数 `--bundletool_jar_path` 和 `auto_download_bundletool_jar`
|
|
32
34
|
- (2.0.1) publish 支持 新参数 `specify_app_display_name`, 指定 app 显示名称
|
|
@@ -34,21 +36,13 @@ Gem::Specification.new do |spec|
|
|
|
34
36
|
- (2.0.1) publish 支持 新参数 `dingtalk_custom_message`, 可以在钉钉通知里增加自定义消息, 此命令需配合 `dingtalk_access_token` 使用
|
|
35
37
|
- (2.0.1) publish 支持 新参数 `skip_fir_cli_feedback`, 可禁止 fir-cli 发送统计信息
|
|
36
38
|
- (2.0.0) publish 使用更快的存储商, 加速上传速度, 若感觉没以前可使用 switch_to_qiniu 恢复
|
|
37
|
-
- (1.7.4) 配合 fastlane-plugin-fir_cli 做了一些小优化
|
|
38
|
-
- (1.7.3) 新增了 上传指定图标, 不上传图标 以及 将版本固定显示在下载页上
|
|
39
|
-
- (1.7.2) 修正了无论是否加参数都固定出现二维码图片的bug
|
|
40
|
-
- (1.7.1) 增加了 钉钉推送 , 增加了返回指定版本下载地址
|
|
41
|
-
- (1.7.0) 过期了ipa_build 功能, 增加了对 android manifest instant run 的兼容
|
|
42
|
-
- (1.6.13) 上传图标逻辑修改
|
|
43
|
-
- (1.6.12) 修复了部分机器没有默认安装 byebug 的问题
|
|
44
|
-
- (1.6.11) 变化了 ruby gem 仓库地址
|
|
45
39
|
- [fir-cli](https://github.com/firhq/fir-cli) 已经开源
|
|
46
40
|
- 欢迎 fork, issue 和 pull request
|
|
47
41
|
)
|
|
48
42
|
|
|
49
43
|
spec.add_development_dependency 'bundler'
|
|
50
44
|
spec.add_development_dependency 'rake'
|
|
51
|
-
|
|
45
|
+
spec.add_development_dependency 'byebug'
|
|
52
46
|
spec.add_development_dependency 'minitest', '~> 5.7'
|
|
53
47
|
spec.add_development_dependency 'pry', '~> 0.10'
|
|
54
48
|
|
data/lib/fir/cli.rb
CHANGED
|
@@ -124,6 +124,8 @@ module FIR
|
|
|
124
124
|
method_option :mappingfile, type: :string, aliases: '-m', desc: 'App mapping file'
|
|
125
125
|
method_option :dingtalk_access_token, type: :string, aliases: '-D', desc: 'Send msg to dingtalk, only need access_token, not whole url'
|
|
126
126
|
method_option :dingtalk_custom_message, type: :string, desc: 'add custom message to dingtalk'
|
|
127
|
+
method_option :dingtalk_at_phones, type: :string, desc: 'at some phones, split by , eg: 13111111111,13111111112'
|
|
128
|
+
method_option :dingtalk_at_all, type: :boolean, default: false
|
|
127
129
|
|
|
128
130
|
method_option :open, type: :boolean, desc: 'true/false if open for everyone'
|
|
129
131
|
method_option :password, type: :string, desc: 'Set password for app'
|
data/lib/fir/util/publish.rb
CHANGED
|
@@ -90,6 +90,7 @@ module FIR
|
|
|
90
90
|
|
|
91
91
|
def upload_fir_cli_usage_info(received_app_info)
|
|
92
92
|
return if @options[:skip_fir_cli_feedback]
|
|
93
|
+
|
|
93
94
|
short = received_app_info[:short]
|
|
94
95
|
AdmqrKnife.visit(
|
|
95
96
|
unique_code: 'fir_cli_publish',
|
|
@@ -153,13 +154,14 @@ module FIR
|
|
|
153
154
|
qrcode_path = "#{File.dirname(@file_path)}/fir-#{@app_info[:name]}.png"
|
|
154
155
|
FIR.generate_rqrcode(download_url, qrcode_path)
|
|
155
156
|
|
|
156
|
-
|
|
157
157
|
# NOTE: showing with default options specified explicitly
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
158
|
+
if @options[:need_ansi_qrcode]
|
|
159
|
+
puts RQRCode::QRCode.new(download_url).as_ansi(
|
|
160
|
+
light: "\033[47m", dark: "\033[40m",
|
|
161
|
+
fill_character: ' ',
|
|
162
|
+
quiet_zone_size: 1
|
|
163
|
+
)
|
|
164
|
+
end
|
|
163
165
|
|
|
164
166
|
# 为何在这里必须生成 QrCode ? 因为要在 dingtalk 调用
|
|
165
167
|
logger.info "Local qrcode file: #{qrcode_path}" if @export_qrcode
|
|
@@ -190,8 +192,10 @@ module FIR
|
|
|
190
192
|
"markdown": {
|
|
191
193
|
"title": "#{title} uploaded",
|
|
192
194
|
"text": "#{title} uploaded at #{Time.now}\nurl: #{download_url}\n#{options[:dingtalk_custom_message]}\n))})"
|
|
195
|
+
# "text": "#{title} uploaded at #{Time.now}\nurl: #{download_url}\n#{options[:dingtalk_custom_message]}\n"
|
|
193
196
|
}
|
|
194
197
|
}
|
|
198
|
+
build_dingtalk_at_info(payload)
|
|
195
199
|
url = "https://oapi.dingtalk.com/robot/send?access_token=#{options[:dingtalk_access_token]}"
|
|
196
200
|
|
|
197
201
|
# 用完了二维码, 就删了
|
|
@@ -236,5 +240,17 @@ module FIR
|
|
|
236
240
|
check_token_cannot_be_blank(@token)
|
|
237
241
|
fetch_user_info(@token)
|
|
238
242
|
end
|
|
243
|
+
|
|
244
|
+
def build_dingtalk_at_info(payload)
|
|
245
|
+
answer = {}
|
|
246
|
+
answer[:isAtAll] = options[:dingtalk_at_all]
|
|
247
|
+
|
|
248
|
+
unless options[:dingtalk_at_phones].blank?
|
|
249
|
+
answer[:atMobiles] = options[:dingtalk_at_phones].split(',')
|
|
250
|
+
payload[:markdown][:text] += options[:dingtalk_at_phones].split(',').map { |x| "@#{x}" }.join(',')
|
|
251
|
+
end
|
|
252
|
+
|
|
253
|
+
payload[:at] = answer
|
|
254
|
+
end
|
|
239
255
|
end
|
|
240
256
|
end
|
data/lib/fir/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: fir-cli
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.0.3.
|
|
4
|
+
version: 2.0.3.beta
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- NaixSpirit
|
|
@@ -9,7 +9,7 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date:
|
|
12
|
+
date: 2020-01-03 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: bundler
|
|
@@ -39,6 +39,20 @@ dependencies:
|
|
|
39
39
|
- - ">="
|
|
40
40
|
- !ruby/object:Gem::Version
|
|
41
41
|
version: '0'
|
|
42
|
+
- !ruby/object:Gem::Dependency
|
|
43
|
+
name: byebug
|
|
44
|
+
requirement: !ruby/object:Gem::Requirement
|
|
45
|
+
requirements:
|
|
46
|
+
- - ">="
|
|
47
|
+
- !ruby/object:Gem::Version
|
|
48
|
+
version: '0'
|
|
49
|
+
type: :development
|
|
50
|
+
prerelease: false
|
|
51
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
52
|
+
requirements:
|
|
53
|
+
- - ">="
|
|
54
|
+
- !ruby/object:Gem::Version
|
|
55
|
+
version: '0'
|
|
42
56
|
- !ruby/object:Gem::Dependency
|
|
43
57
|
name: minitest
|
|
44
58
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -254,18 +268,16 @@ metadata: {}
|
|
|
254
268
|
post_install_message: "\n ______________ ________ ____\n /
|
|
255
269
|
____/ _/ __ \\ / ____/ / / _/\n / /_ / // /_/ /_____/ / / / /
|
|
256
270
|
/\n / __/ _/ // _, _/_____/ /___/ /____/ /\n /_/ /___/_/ |_| \\____/_____/___/\n\n
|
|
257
|
-
\ ## 更新记录\n - (2.0.3.
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
271
|
+
\ ## 更新记录\n - (2.0.3.beta) 增加 dingtalk_at_phones, 钉钉通知可 at 用户手机号, 以逗号,分割. 此命令需配合
|
|
272
|
+
`dingtalk_access_token` 使用\n - (2.0.3.beta) 增加 dingtalk_at_all, 钉钉通知可 at 所有人, 此命令需配合
|
|
273
|
+
`dingtalk_access_token` 使用\n - (2.0.3.alpha) publish 增加海外加速参数 --oversea_turbo\n
|
|
274
|
+
\ - (2.0.2) 有限支持 aab 文件上传, 强依赖`bundletool`工具, 具体请参见参数 `--bundletool_jar_path` 和
|
|
275
|
+
`auto_download_bundletool_jar`\n - (2.0.1) publish 支持 新参数 `specify_app_display_name`,
|
|
276
|
+
指定 app 显示名称\n - (2.0.1) publish 支持 新参数 `need_ansi_qrcode`, 在控制台直接打印二维码, jenkins
|
|
277
|
+
用户可能需要使用 `AnsiColor Plugin` 插件配合\n - (2.0.1) publish 支持 新参数 `dingtalk_custom_message`,
|
|
278
|
+
可以在钉钉通知里增加自定义消息, 此命令需配合 `dingtalk_access_token` 使用\n - (2.0.1) publish 支持 新参数 `skip_fir_cli_feedback`,
|
|
263
279
|
可禁止 fir-cli 发送统计信息\n - (2.0.0) publish 使用更快的存储商, 加速上传速度, 若感觉没以前可使用 switch_to_qiniu
|
|
264
|
-
恢复\n - (
|
|
265
|
-
以及 将版本固定显示在下载页上\n - (1.7.2) 修正了无论是否加参数都固定出现二维码图片的bug\n - (1.7.1) 增加了 钉钉推送 , 增加了返回指定版本下载地址\n
|
|
266
|
-
\ - (1.7.0) 过期了ipa_build 功能, 增加了对 android manifest instant run 的兼容\n - (1.6.13)
|
|
267
|
-
上传图标逻辑修改\n - (1.6.12) 修复了部分机器没有默认安装 byebug 的问题\n - (1.6.11) 变化了 ruby gem 仓库地址\n
|
|
268
|
-
\ - [fir-cli](https://github.com/firhq/fir-cli) 已经开源\n - 欢迎 fork, issue 和 pull
|
|
280
|
+
恢复\n - [fir-cli](https://github.com/firhq/fir-cli) 已经开源\n - 欢迎 fork, issue 和 pull
|
|
269
281
|
request\n "
|
|
270
282
|
rdoc_options: []
|
|
271
283
|
require_paths:
|