pindo 5.4.0 → 5.5.0
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/lib/pindo/base/pindocontext.rb +42 -31
- data/lib/pindo/client/aws3sclient.rb +2 -2
- data/lib/pindo/client/httpclient.rb +1 -2
- data/lib/pindo/command/android/autobuild.rb +40 -18
- data/lib/pindo/command/android/build.rb +37 -16
- data/lib/pindo/command/android/debug.rb +34 -20
- data/lib/pindo/command/appstore/iap.rb +15 -1
- data/lib/pindo/command/appstore/itcapp.rb +15 -1
- data/lib/pindo/command/appstore/metadata.rb +15 -1
- data/lib/pindo/command/appstore/screenshots.rb +15 -1
- data/lib/pindo/command/appstore/upload.rb +15 -1
- data/lib/pindo/command/deploy/build.rb +35 -20
- data/lib/pindo/command/deploy/bundleid.rb +15 -1
- data/lib/pindo/command/deploy/cert.rb +19 -2
- data/lib/pindo/command/deploy/check.rb +15 -1
- data/lib/pindo/command/deploy/configproj.rb +15 -1
- data/lib/pindo/command/deploy/confusecode.rb +15 -1
- data/lib/pindo/command/deploy/confuseproj.rb +11 -1
- data/lib/pindo/command/deploy/fabric.rb +10 -1
- data/lib/pindo/command/deploy/getitcinfo.rb +11 -1
- data/lib/pindo/command/deploy/iap.rb +12 -1
- data/lib/pindo/command/deploy/initconfig.rb +11 -1
- data/lib/pindo/command/deploy/itcinfo.rb +12 -1
- data/lib/pindo/command/deploy/pullconfig.rb +11 -1
- data/lib/pindo/command/deploy/pushconfig.rb +11 -1
- data/lib/pindo/command/deploy/quswark.rb +12 -1
- data/lib/pindo/command/deploy/quswauth.rb +10 -1
- data/lib/pindo/command/deploy/reportbug.rb +11 -1
- data/lib/pindo/command/deploy/resign.rb +12 -1
- data/lib/pindo/command/deploy/updateconfig.rb +11 -1
- data/lib/pindo/command/deploy/uploadipa.rb +11 -1
- data/lib/pindo/command/env/dreamstudio.rb +13 -1
- data/lib/pindo/command/env/quarkenv.rb +13 -1
- data/lib/pindo/command/env/swarkenv.rb +13 -1
- data/lib/pindo/command/env/workhard.rb +13 -1
- data/lib/pindo/command/gplay/iap.rb +21 -5
- data/lib/pindo/command/gplay/itcapp.rb +19 -5
- data/lib/pindo/command/gplay/metadata.rb +23 -5
- data/lib/pindo/command/gplay/screenshots.rb +23 -5
- data/lib/pindo/command/gplay/upload.rb +21 -5
- data/lib/pindo/command/gplay.rb +8 -8
- data/lib/pindo/command/ios/adhoc.rb +18 -3
- data/lib/pindo/command/ios/autobuild.rb +22 -7
- data/lib/pindo/command/ios/autoresign.rb +18 -3
- data/lib/pindo/command/ios/build.rb +18 -4
- data/lib/pindo/command/ipa/autoresign.rb +35 -4
- data/lib/pindo/command/ipa/import.rb +19 -1
- data/lib/pindo/command/ipa/output.rb +39 -4
- data/lib/pindo/command/{pgyer → jps}/apptest.rb +35 -24
- data/lib/pindo/command/jps/bind.rb +191 -0
- data/lib/pindo/command/{pgyer → jps}/comment.rb +19 -19
- data/lib/pindo/command/{pgyer → jps}/download.rb +20 -20
- data/lib/pindo/command/{pgyer → jps}/login.rb +9 -9
- data/lib/pindo/command/{pgyer → jps}/resign.rb +40 -25
- data/lib/pindo/command/{pgyer → jps}/upload.rb +60 -43
- data/lib/pindo/command/jps.rb +18 -0
- data/lib/pindo/command/lib/forcepush.rb +15 -1
- data/lib/pindo/command/lib/push.rb +15 -1
- data/lib/pindo/command/lib/update.rb +15 -1
- data/lib/pindo/command/repo/clone.rb +11 -1
- data/lib/pindo/command/repo/create.rb +13 -1
- data/lib/pindo/command/repo/login.rb +14 -3
- data/lib/pindo/command/repo/search.rb +14 -2
- data/lib/pindo/command/unity/apk.rb +14 -28
- data/lib/pindo/command/unity/autobuild.rb +13 -13
- data/lib/pindo/command/unity/ipa.rb +15 -29
- data/lib/pindo/command/unity/web.rb +15 -15
- data/lib/pindo/command/utils/boss.rb +19 -2
- data/lib/pindo/command/utils/clearcert.rb +18 -2
- data/lib/pindo/command/utils/device.rb +19 -2
- data/lib/pindo/command/utils/icon.rb +20 -2
- data/lib/pindo/command/utils/renewcert.rb +28 -3
- data/lib/pindo/command/utils/renewproj.rb +25 -2
- data/lib/pindo/command/utils/tgate.rb +28 -3
- data/lib/pindo/command/utils/xcassets.rb +20 -2
- data/lib/pindo/command/web/autobuild.rb +18 -3
- data/lib/pindo/command.rb +8 -2
- data/lib/pindo/module/pgyer/pgyerhelper.rb +185 -85
- data/lib/pindo/version.rb +1 -1
- metadata +30 -12
- data/lib/pindo/client/pgyer_feishu_oauth_cli.rb +0 -669
- data/lib/pindo/client/pgyerclient.rb +0 -466
- data/lib/pindo/client/pgyeruploadclient.rb +0 -517
- data/lib/pindo/command/pgyer.rb +0 -18
@@ -7,14 +7,14 @@ require 'pindo/module/build/buildhelper'
|
|
7
7
|
|
8
8
|
module Pindo
|
9
9
|
class Command
|
10
|
-
class
|
11
|
-
class Upload <
|
10
|
+
class Jps < Command
|
11
|
+
class Upload < Jps
|
12
12
|
|
13
13
|
|
14
|
-
self.summary = '上传安装包到
|
14
|
+
self.summary = '上传安装包到jps测试平台'
|
15
15
|
|
16
16
|
self.description = <<-DESC
|
17
|
-
上传安装包到
|
17
|
+
上传安装包到jps测试平台。
|
18
18
|
|
19
19
|
支持功能:
|
20
20
|
|
@@ -26,17 +26,17 @@ module Pindo
|
|
26
26
|
|
27
27
|
使用示例:
|
28
28
|
|
29
|
-
$ pindo
|
30
|
-
|
31
|
-
$ pindo
|
32
|
-
|
33
|
-
$ pindo
|
34
|
-
|
35
|
-
$ pindo
|
36
|
-
|
37
|
-
$ pindo
|
38
|
-
|
39
|
-
$ pindo
|
29
|
+
$ pindo jps upload path/to/app.ipa # 上传指定安装包
|
30
|
+
|
31
|
+
$ pindo jps upload --proj=demo # 上传到指定项目
|
32
|
+
|
33
|
+
$ pindo jps upload --desc="版本说明" # 添加版本描述
|
34
|
+
|
35
|
+
$ pindo jps upload --attach=file.zip # 上传附件
|
36
|
+
|
37
|
+
$ pindo jps upload --resign # 上传后重签名
|
38
|
+
|
39
|
+
$ pindo jps upload --send # 上传后发送企业微信测试信息
|
40
40
|
DESC
|
41
41
|
|
42
42
|
self.arguments = [
|
@@ -45,15 +45,15 @@ module Pindo
|
|
45
45
|
|
46
46
|
def self.options
|
47
47
|
[
|
48
|
-
['--login', '强制再次登录
|
49
|
-
['--ipa', '强制指定上传的ipa文件: pindo
|
50
|
-
['--proj', '指定哪个项目(忽略大小写空格等等字符),用法:pindo
|
51
|
-
['--attach', '指定需要和ipa一起上传的附件: pindo
|
52
|
-
['--send', '
|
53
|
-
['--desc', '指定上传的备注信息: -pindo
|
54
|
-
['--resign', '上传到之后是否重签名,用法:pindo
|
55
|
-
['--certid', '设置重签名的正式id,用法:pindo
|
56
|
-
|
48
|
+
['--login', '强制再次登录jps网站,用法: pindo jps upload --login'],
|
49
|
+
['--ipa', '强制指定上传的ipa文件: pindo jps upload --ipa=path/to/demo.ipa'],
|
50
|
+
['--proj', '指定哪个项目(忽略大小写空格等等字符),用法:pindo jps upload --proj=prancksoundv4'],
|
51
|
+
['--attach', '指定需要和ipa一起上传的附件: pindo jps upload --attach=path/to/attach.zip'],
|
52
|
+
['--send', '发送消息到项目群(注意:不带此参数也会发送给自己),用法:pindo jps upload --send'],
|
53
|
+
['--desc', '指定上传的备注信息: -pindo jps upload -desc="1.upload message"'],
|
54
|
+
['--resign', '上传到之后是否重签名,用法:pindo jps upload --resign'],
|
55
|
+
['--certid', '设置重签名的正式id,用法:pindo jps upload --certid=com.test.bundleid'],
|
56
|
+
|
57
57
|
].concat(super)
|
58
58
|
end
|
59
59
|
|
@@ -110,7 +110,7 @@ module Pindo
|
|
110
110
|
Dir.chdir(current_project_dir)
|
111
111
|
is_need_add_tag,tag_action_parms = build_helper.check_is_need_add_tag?(current_project_dir)
|
112
112
|
if is_need_add_tag
|
113
|
-
Pindo::Command::Dev::Tag::run(tag_action_parms)
|
113
|
+
Pindo::Command::Dev::Tag::run(tag_action_parms)
|
114
114
|
end
|
115
115
|
|
116
116
|
if @args_ipa_file.nil? || !File.exist?(@args_ipa_file)
|
@@ -124,7 +124,7 @@ module Pindo
|
|
124
124
|
build_path = File.join(current_project_dir, "build", "*.{apk}")
|
125
125
|
@args_ipa_file = Dir.glob(build_path).max_by {|f| File.mtime(f)}
|
126
126
|
when :unity
|
127
|
-
|
127
|
+
|
128
128
|
if File.exist?(File.join(current_project_dir, "GoodPlatform/BaseiOS"))
|
129
129
|
build_path = File.join(current_project_dir, "GoodPlatform/BaseiOS/build", "*.{ipa,app}")
|
130
130
|
@args_ipa_file = Dir.glob(build_path).max_by {|f| File.mtime(f)}
|
@@ -164,27 +164,44 @@ module Pindo
|
|
164
164
|
app_info_obj = PgyerHelper.share_instace.prepare_upload(working_directory:Dir.pwd, proj_name:@args_proj_name)
|
165
165
|
|
166
166
|
if app_info_obj.nil?
|
167
|
-
raise Informative, "#{@args_proj_name} 错误, 请输入正确的App代号名称,
|
167
|
+
raise Informative, "#{@args_proj_name} 错误, 请输入正确的App代号名称, jps网站没有该App"
|
168
168
|
end
|
169
169
|
|
170
170
|
result_data = PgyerHelper.share_instace.start_upload(app_info_obj:app_info_obj, ipa_file_upload:@args_ipa_file, description:@args_upload_desc)
|
171
171
|
if !result_data.nil? && !result_data["data"].nil? && !result_data["data"]["id"].nil?
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
172
|
+
PgyerHelper.share_instace.print_app_version_info(
|
173
|
+
app_info_obj: app_info_obj,
|
174
|
+
app_version_info_obj: result_data["data"]
|
175
|
+
)
|
176
|
+
|
177
|
+
if @args_resign_flag
|
178
|
+
args = []
|
179
|
+
if @args_send_flag
|
178
180
|
args << "--send"
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
181
|
+
end
|
182
|
+
if !@args_cert_id.nil? && !@args_cert_id.empty?
|
183
|
+
args << "--certid=#{@args_cert_id}"
|
184
|
+
end
|
185
|
+
if !@args_proj_name.nil? && !@args_proj_name.empty?
|
186
|
+
args << "--proj=#{@args_proj_name}"
|
187
|
+
end
|
188
|
+
Pindo::Command::Jps::Resign::run(args)
|
189
|
+
else
|
190
|
+
# 始终发送给自己
|
191
|
+
PgyerHelper.share_instace.send_apptest_msg(
|
192
|
+
app_info_obj: app_info_obj,
|
193
|
+
app_version_info_obj: result_data["data"],
|
194
|
+
receiveType: "self"
|
195
|
+
)
|
196
|
+
|
197
|
+
# 如果有 --send 参数,额外发送到测试群
|
198
|
+
if @args_send_flag
|
199
|
+
PgyerHelper.share_instace.send_apptest_msg(
|
200
|
+
app_info_obj: app_info_obj,
|
201
|
+
app_version_info_obj: result_data["data"],
|
202
|
+
chatEnv: "DevTest",
|
203
|
+
receiveType: "chat"
|
204
|
+
)
|
188
205
|
end
|
189
206
|
end
|
190
207
|
end
|
@@ -194,4 +211,4 @@ module Pindo
|
|
194
211
|
end
|
195
212
|
end
|
196
213
|
end
|
197
|
-
end
|
214
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
require 'pindo/command/jps/login'
|
2
|
+
require 'pindo/command/jps/upload'
|
3
|
+
require 'pindo/command/jps/download'
|
4
|
+
require 'pindo/command/jps/comment'
|
5
|
+
require 'pindo/command/jps/apptest'
|
6
|
+
require 'pindo/command/jps/resign'
|
7
|
+
require 'pindo/command/jps/bind'
|
8
|
+
|
9
|
+
module Pindo
|
10
|
+
class Command
|
11
|
+
|
12
|
+
class Jps < Command
|
13
|
+
self.abstract_command = true
|
14
|
+
self.summary = 'jps网站的相关命令'
|
15
|
+
end
|
16
|
+
|
17
|
+
end
|
18
|
+
end
|
@@ -10,7 +10,21 @@ module Pindo
|
|
10
10
|
self.summary = '将私有pod库推送到远程仓库中'
|
11
11
|
|
12
12
|
self.description = <<-DESC
|
13
|
-
|
13
|
+
强制将私有pod库推送到远程仓库并添加到索引库中。
|
14
|
+
|
15
|
+
支持功能:
|
16
|
+
|
17
|
+
* 强制推送podspec
|
18
|
+
|
19
|
+
* 覆盖已存在的版本
|
20
|
+
|
21
|
+
* 跳过验证步骤
|
22
|
+
|
23
|
+
使用示例:
|
24
|
+
|
25
|
+
$ pindo lib forcepush MyLib.podspec # 强制推送指定的podspec
|
26
|
+
|
27
|
+
$ pindo lib forcepush # 强制推送当前目录的podspec
|
14
28
|
DESC
|
15
29
|
|
16
30
|
self.arguments = [
|
@@ -10,7 +10,21 @@ module Pindo
|
|
10
10
|
self.summary = '将私有pod库推送到远程仓库中'
|
11
11
|
|
12
12
|
self.description = <<-DESC
|
13
|
-
|
13
|
+
将私有pod库推送到远程仓库并添加到索引库中。
|
14
|
+
|
15
|
+
支持功能:
|
16
|
+
|
17
|
+
* 验证podspec文件
|
18
|
+
|
19
|
+
* 推送到远程Git仓库
|
20
|
+
|
21
|
+
* 添加到私有索引库
|
22
|
+
|
23
|
+
使用示例:
|
24
|
+
|
25
|
+
$ pindo lib push MyLib.podspec # 推送指定的podspec
|
26
|
+
|
27
|
+
$ pindo lib push # 自动查找并推送podspec
|
14
28
|
DESC
|
15
29
|
|
16
30
|
self.arguments = [
|
@@ -10,7 +10,21 @@ module Pindo
|
|
10
10
|
self.summary = '更新私有库索引地址'
|
11
11
|
|
12
12
|
self.description = <<-DESC
|
13
|
-
|
13
|
+
更新私有库索引地址。
|
14
|
+
|
15
|
+
支持功能:
|
16
|
+
|
17
|
+
* 更新私有索引库
|
18
|
+
|
19
|
+
* 同步最新的podspec
|
20
|
+
|
21
|
+
* 清理缓存
|
22
|
+
|
23
|
+
使用示例:
|
24
|
+
|
25
|
+
$ pindo lib update # 更新所有私有索引库
|
26
|
+
|
27
|
+
$ pindo lib update MySpecs # 更新指定的索引库
|
14
28
|
DESC
|
15
29
|
|
16
30
|
self.arguments = [
|
@@ -14,7 +14,17 @@ module Pindo
|
|
14
14
|
self.summary = '下载仓库到本地'
|
15
15
|
|
16
16
|
self.description = <<-DESC
|
17
|
-
|
17
|
+
下载仓库到本地,支持从配置文件自动获取仓库信息或手动指定仓库名称进行下载。
|
18
|
+
|
19
|
+
支持功能:
|
20
|
+
• 手动指定仓库名称进行下载
|
21
|
+
• 自动从当前目录config.json文件读取仓库信息
|
22
|
+
• 支持指定分支下载(默认master分支)
|
23
|
+
• 下载到当前工作目录
|
24
|
+
|
25
|
+
使用示例:
|
26
|
+
pindo repo clone my-repo # 下载指定仓库
|
27
|
+
pindo repo clone # 从config.json自动获取仓库信息下载
|
18
28
|
DESC
|
19
29
|
|
20
30
|
self.arguments = [
|
@@ -12,7 +12,19 @@ module Pindo
|
|
12
12
|
self.summary = '代码托管网站中创建仓库'
|
13
13
|
|
14
14
|
self.description = <<-DESC
|
15
|
-
|
15
|
+
在代码托管网站中创建新的仓库,支持指定仓库名称、组织信息和强制登录等功能。
|
16
|
+
|
17
|
+
支持功能:
|
18
|
+
• 在代码托管网站创建新仓库
|
19
|
+
• 支持指定仓库名称和组织信息
|
20
|
+
• 支持强制重新登录
|
21
|
+
• 命令行参数和选项灵活配置
|
22
|
+
|
23
|
+
使用示例:
|
24
|
+
pindo repo create my-repo # 创建指定名称的仓库
|
25
|
+
pindo repo create --repo my-repo # 通过选项指定仓库名称
|
26
|
+
pindo repo create --org my-org --repo test # 指定组织和仓库名称
|
27
|
+
pindo repo create --login # 强制重新登录后创建
|
16
28
|
DESC
|
17
29
|
|
18
30
|
self.arguments = [
|
@@ -4,7 +4,7 @@ require 'highline/import'
|
|
4
4
|
require 'fileutils'
|
5
5
|
require 'json'
|
6
6
|
require 'faraday'
|
7
|
-
require '
|
7
|
+
require 'jpsclient'
|
8
8
|
require 'pindo/client/aws3sclient'
|
9
9
|
|
10
10
|
|
@@ -17,7 +17,17 @@ module Pindo
|
|
17
17
|
self.summary = '登录代码仓库托管网站'
|
18
18
|
|
19
19
|
self.description = <<-DESC
|
20
|
-
|
20
|
+
登录代码仓库托管网站,使用JPS客户端进行身份验证和会话管理。
|
21
|
+
|
22
|
+
支持功能:
|
23
|
+
• 自动登录代码仓库托管网站
|
24
|
+
• 支持强制重新登录覆盖现有会话
|
25
|
+
• 使用配置文件管理登录凭据
|
26
|
+
• 登录状态验证和错误处理
|
27
|
+
|
28
|
+
使用示例:
|
29
|
+
pindo repo login # 正常登录
|
30
|
+
pindo repo login --force # 强制重新登录
|
21
31
|
DESC
|
22
32
|
|
23
33
|
self.arguments = [
|
@@ -47,7 +57,8 @@ module Pindo
|
|
47
57
|
def run
|
48
58
|
|
49
59
|
app_info_obj = nil
|
50
|
-
|
60
|
+
config_file = File.join(File::expand_path(Pindoconfig.instance.pindo_common_configdir), "jps_client_config.json")
|
61
|
+
@pgyer_client = JPSClient::Client.new(config_file: config_file)
|
51
62
|
|
52
63
|
login_success = @pgyer_client.do_login(force_login:@args_login_flag)
|
53
64
|
|
@@ -4,7 +4,7 @@ require 'highline/import'
|
|
4
4
|
require 'fileutils'
|
5
5
|
require 'json'
|
6
6
|
require 'faraday'
|
7
|
-
require '
|
7
|
+
require 'jpsclient'
|
8
8
|
require 'pindo/client/aws3sclient'
|
9
9
|
|
10
10
|
|
@@ -16,7 +16,19 @@ module Pindo
|
|
16
16
|
self.summary = '代码托管网站中模糊搜索仓库信息'
|
17
17
|
|
18
18
|
self.description = <<-DESC
|
19
|
-
|
19
|
+
在代码托管网站中模糊搜索仓库信息,支持关键词搜索和多种过滤条件。
|
20
|
+
|
21
|
+
支持功能:
|
22
|
+
• 基于关键词的模糊搜索仓库
|
23
|
+
• 支持指定仓库名称精确搜索
|
24
|
+
• 支持按组织过滤搜索结果
|
25
|
+
• 支持强制重新登录进行搜索
|
26
|
+
|
27
|
+
使用示例:
|
28
|
+
pindo repo search my-project # 搜索包含关键词的仓库
|
29
|
+
pindo repo search --repo exact-name # 精确搜索指定仓库名称
|
30
|
+
pindo repo search --org my-org keyword # 在指定组织中搜索
|
31
|
+
pindo repo search --login keyword # 强制重新登录后搜索
|
20
32
|
DESC
|
21
33
|
|
22
34
|
self.arguments = [
|
@@ -21,26 +21,26 @@ module Pindo
|
|
21
21
|
|
22
22
|
# 命令的详细说明,包含用法示例
|
23
23
|
self.description = <<-DESC
|
24
|
-
|
24
|
+
编译Unity工程生成Android APK。
|
25
25
|
|
26
|
-
|
26
|
+
支持功能:
|
27
27
|
|
28
|
-
|
28
|
+
* 编译生成APK
|
29
29
|
|
30
|
-
|
30
|
+
* 上传到测试平台
|
31
31
|
|
32
|
-
|
32
|
+
* 发送测试通知
|
33
33
|
|
34
|
-
|
34
|
+
使用示例:
|
35
35
|
|
36
|
-
|
36
|
+
$ pindo unity apk # 编译APK
|
37
37
|
|
38
|
-
|
38
|
+
$ pindo unity apk --upload # 编译并上传
|
39
39
|
|
40
|
-
|
40
|
+
$ pindo unity apk --send # 编译并上传并发送通知
|
41
41
|
|
42
|
-
|
43
|
-
|
42
|
+
$ pindo unity apk --proj=myapp # 指定项目名称
|
43
|
+
DESC
|
44
44
|
|
45
45
|
# 命令的参数列表
|
46
46
|
self.arguments = [
|
@@ -53,9 +53,9 @@ module Pindo
|
|
53
53
|
# 指定上传到蒲公英的项目
|
54
54
|
['--proj', '指定上传到测试平台的项目名称'],
|
55
55
|
# 上传编译包
|
56
|
-
['--upload', '上传编译后的APK到测试平台'],
|
56
|
+
['--upload', '上传编译后的APK到测试平台(上传成功后会自动发送消息给自己)'],
|
57
57
|
# 发送通知
|
58
|
-
['--send', '
|
58
|
+
['--send', '发送消息到项目群(注意:不带此参数也会发送给自己)']
|
59
59
|
|
60
60
|
].concat(super)
|
61
61
|
end
|
@@ -114,20 +114,6 @@ module Pindo
|
|
114
114
|
pindo_android_project_dir = android_export_lib_dir
|
115
115
|
end
|
116
116
|
|
117
|
-
# 验证构建输出目录是否存在
|
118
|
-
unless File.directory?(pindo_android_project_dir)
|
119
|
-
puts "\e[31m错误: Unity 构建输出目录不存在: #{pindo_android_project_dir}\e[0m"
|
120
|
-
puts "\e[33m可能的原因:\e[0m"
|
121
|
-
puts "• Unity 构建失败但未正确报告错误"
|
122
|
-
puts "• GoodUnityBuild 配置的输出路径不正确"
|
123
|
-
puts "• Unity 项目配置问题"
|
124
|
-
puts "\e[33m建议检查:\e[0m"
|
125
|
-
puts "• Unity 控制台日志"
|
126
|
-
puts "• GoodUnityBuild 的 AndroidBuildConfiguration.cs 配置"
|
127
|
-
puts "• 项目路径和权限设置"
|
128
|
-
raise "Unity 构建输出目录不存在,构建可能失败"
|
129
|
-
end
|
130
|
-
|
131
117
|
puts "开始构建Unity项目..."
|
132
118
|
|
133
119
|
unity_helper.build_project(
|
@@ -141,7 +127,7 @@ module Pindo
|
|
141
127
|
args_temp = []
|
142
128
|
|
143
129
|
if @args_upload_flag
|
144
|
-
args_temp << "--proj=#{app_info_obj["
|
130
|
+
args_temp << "--proj=#{app_info_obj["projectName"]}"
|
145
131
|
args_temp << "--upload"
|
146
132
|
end
|
147
133
|
if @args_send_flag
|
@@ -19,24 +19,24 @@ module Pindo
|
|
19
19
|
|
20
20
|
# 详细说明
|
21
21
|
self.description = <<-DESC
|
22
|
-
|
23
|
-
|
24
|
-
|
22
|
+
编译Unity工程生成iOS IPA并支持上传到测试平台。
|
23
|
+
|
24
|
+
支持功能:
|
25
25
|
|
26
|
-
|
26
|
+
* 编译生成IPA
|
27
27
|
|
28
|
-
|
28
|
+
* 上传到测试平台
|
29
29
|
|
30
|
-
|
30
|
+
* 发送测试通知
|
31
31
|
|
32
|
-
|
32
|
+
使用示例:
|
33
33
|
|
34
|
-
|
34
|
+
$ pindo unity autobuild # 编译
|
35
35
|
|
36
|
-
|
36
|
+
$ pindo unity autobuild --upload # 编译并上传
|
37
37
|
|
38
|
-
|
39
|
-
|
38
|
+
$ pindo unity autobuild --proj=myapp # 指定项目名称
|
39
|
+
DESC
|
40
40
|
|
41
41
|
# 命令参数
|
42
42
|
self.arguments = [
|
@@ -151,7 +151,7 @@ module Pindo
|
|
151
151
|
args_temp << "--bundleid=#{mainapp_bundleid}"
|
152
152
|
|
153
153
|
if @args_upload_flag
|
154
|
-
args_temp << "--proj=#{app_info_obj["
|
154
|
+
args_temp << "--proj=#{app_info_obj["projectName"]}"
|
155
155
|
args_temp << "--upload"
|
156
156
|
end
|
157
157
|
|
@@ -188,7 +188,7 @@ module Pindo
|
|
188
188
|
args_temp = []
|
189
189
|
|
190
190
|
if @args_upload_flag
|
191
|
-
args_temp << "--proj=#{app_info_obj["
|
191
|
+
args_temp << "--proj=#{app_info_obj["projectName"]}"
|
192
192
|
args_temp << "--upload"
|
193
193
|
end
|
194
194
|
|
@@ -27,26 +27,26 @@ module Pindo
|
|
27
27
|
|
28
28
|
# 详细说明
|
29
29
|
self.description = <<-DESC
|
30
|
-
|
31
|
-
|
32
|
-
|
30
|
+
编译Unity工程生成iOS IPA并支持上传到测试平台。
|
31
|
+
|
32
|
+
支持功能:
|
33
33
|
|
34
|
-
|
34
|
+
* 编译生成IPA
|
35
35
|
|
36
|
-
|
36
|
+
* 上传到测试平台
|
37
37
|
|
38
|
-
|
38
|
+
* 发送测试通知
|
39
39
|
|
40
|
-
|
40
|
+
使用示例:
|
41
41
|
|
42
|
-
|
42
|
+
$ pindo unity ipa # 编译IPA
|
43
43
|
|
44
|
-
|
44
|
+
$ pindo unity ipa --upload # 编译并上传
|
45
45
|
|
46
|
-
|
46
|
+
$ pindo unity ipa --send # 编译上传并发送通知
|
47
47
|
|
48
|
-
|
49
|
-
|
48
|
+
$ pindo unity ipa --proj=myapp # 指定项目名称
|
49
|
+
DESC
|
50
50
|
|
51
51
|
# 命令参数
|
52
52
|
self.arguments = [
|
@@ -58,8 +58,8 @@ module Pindo
|
|
58
58
|
[
|
59
59
|
['--bundleid', '指定打包的bundleID'],
|
60
60
|
['--proj', '指定上传到测试平台的项目名称'],
|
61
|
-
['--upload', '上传编译后的IPA到测试平台'],
|
62
|
-
['--send', '
|
61
|
+
['--upload', '上传编译后的IPA到测试平台(上传成功后会自动发送消息给自己)'],
|
62
|
+
['--send', '发送消息到项目群(注意:不带此参数也会发送给自己)'],
|
63
63
|
['--base', 'Unity工程编译lib模式'],
|
64
64
|
['--unity-version', '切换Unity版本']
|
65
65
|
].concat(super)
|
@@ -138,20 +138,6 @@ module Pindo
|
|
138
138
|
pindo_ios_project_dir = ios_export_lib_dir
|
139
139
|
end
|
140
140
|
|
141
|
-
# 验证构建输出目录是否存在
|
142
|
-
unless File.directory?(pindo_ios_project_dir)
|
143
|
-
puts "\e[31m错误: Unity 构建输出目录不存在: #{pindo_ios_project_dir}\e[0m"
|
144
|
-
puts "\e[33m可能的原因:\e[0m"
|
145
|
-
puts "• Unity 构建失败但未正确报告错误"
|
146
|
-
puts "• GoodUnityBuild 配置的输出路径不正确"
|
147
|
-
puts "• Unity 项目配置问题"
|
148
|
-
puts "\e[33m建议检查:\e[0m"
|
149
|
-
puts "• Unity 控制台日志"
|
150
|
-
puts "• GoodUnityBuild 的 IOSBuildConfiguration.cs 配置"
|
151
|
-
puts "• 项目路径和权限设置"
|
152
|
-
raise "Unity 构建输出目录不存在,构建可能失败"
|
153
|
-
end
|
154
|
-
|
155
141
|
unity_helper.build_project(unity_exe_full_path:unity_exe_path, project_path:pindo_project_dir, platform:'iOS', isLibrary:isLibrary)
|
156
142
|
|
157
143
|
|
@@ -159,7 +145,7 @@ module Pindo
|
|
159
145
|
args_temp << "--bundleid=#{mainapp_bundleid}"
|
160
146
|
|
161
147
|
if @args_upload_flag
|
162
|
-
args_temp << "--proj=#{app_info_obj["
|
148
|
+
args_temp << "--proj=#{app_info_obj["projectName"]}"
|
163
149
|
args_temp << "--upload"
|
164
150
|
end
|
165
151
|
if @args_send_flag
|
@@ -24,26 +24,26 @@ module Pindo
|
|
24
24
|
|
25
25
|
# 详细说明
|
26
26
|
self.description = <<-DESC
|
27
|
-
|
28
|
-
|
29
|
-
|
27
|
+
编译Unity工程生成WebGL并支持上传到测试平台。
|
28
|
+
|
29
|
+
支持功能:
|
30
30
|
|
31
|
-
|
31
|
+
* 编译生成WebGL
|
32
32
|
|
33
|
-
|
33
|
+
* 上传到测试平台
|
34
34
|
|
35
|
-
|
35
|
+
* 发送测试通知
|
36
36
|
|
37
|
-
|
37
|
+
使用示例:
|
38
38
|
|
39
|
-
|
39
|
+
$ pindo unity web # 编译WebGL
|
40
40
|
|
41
|
-
|
41
|
+
$ pindo unity web --upload # 编译并上传
|
42
42
|
|
43
|
-
|
43
|
+
$ pindo unity web --send # 编译上传并发送通知
|
44
44
|
|
45
|
-
|
46
|
-
|
45
|
+
$ pindo unity web --proj=myapp # 指定项目名称
|
46
|
+
DESC
|
47
47
|
|
48
48
|
# 命令参数
|
49
49
|
self.arguments = [
|
@@ -54,8 +54,8 @@ module Pindo
|
|
54
54
|
def self.options
|
55
55
|
[
|
56
56
|
['--proj', '指定上传到测试平台的项目名称'],
|
57
|
-
['--upload', '上传编译后的WebGL到测试平台'],
|
58
|
-
['--send', '
|
57
|
+
['--upload', '上传编译后的WebGL到测试平台(上传成功后会自动发送消息给自己)'],
|
58
|
+
['--send', '发送消息到项目群(注意:不带此参数也会发送给自己)'],
|
59
59
|
['--base', 'Unity工程编译lib模式'],
|
60
60
|
['--unity-version', '切换Unity版本']
|
61
61
|
].concat(super)
|
@@ -136,7 +136,7 @@ module Pindo
|
|
136
136
|
args_temp << "--bundleid=#{mainapp_bundleid}"
|
137
137
|
|
138
138
|
if @args_upload_flag
|
139
|
-
args_temp << "--proj=#{app_info_obj["
|
139
|
+
args_temp << "--proj=#{app_info_obj["projectName"]}"
|
140
140
|
args_temp << "--upload"
|
141
141
|
end
|
142
142
|
if @args_send_flag
|
@@ -14,8 +14,25 @@ module Pindo
|
|
14
14
|
self.summary = '模拟iOS客户端快速查看boss的状态'
|
15
15
|
|
16
16
|
self.description = <<-DESC
|
17
|
-
|
18
|
-
|
17
|
+
模拟iOS客户端快速查看boss的状态工具。
|
18
|
+
|
19
|
+
支持功能:
|
20
|
+
- 模拟iOS客户端设备信息
|
21
|
+
- 查看boss配置状态
|
22
|
+
- 检查审核状态
|
23
|
+
- 支持自定义平台、bundle id、版本号等参数
|
24
|
+
- 从config.json文件自动读取配置
|
25
|
+
|
26
|
+
使用示例:
|
27
|
+
# 查看默认配置状态
|
28
|
+
pindo utils boss
|
29
|
+
|
30
|
+
# 指定平台和bundle id
|
31
|
+
pindo utils boss --platform="iOS_Test" --bundleid="com.example.app"
|
32
|
+
|
33
|
+
# 指定版本号和应用类型
|
34
|
+
pindo utils boss --appversion="1.0.0" --apptype="FancyApp"
|
35
|
+
DESC
|
19
36
|
|
20
37
|
self.arguments = [
|
21
38
|
|