pindo 5.4.1 → 5.5.1

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.
Files changed (84) hide show
  1. checksums.yaml +4 -4
  2. data/lib/pindo/client/aws3sclient.rb +2 -2
  3. data/lib/pindo/client/httpclient.rb +1 -2
  4. data/lib/pindo/command/android/autobuild.rb +40 -18
  5. data/lib/pindo/command/android/build.rb +37 -16
  6. data/lib/pindo/command/android/debug.rb +34 -20
  7. data/lib/pindo/command/appstore/iap.rb +15 -1
  8. data/lib/pindo/command/appstore/itcapp.rb +15 -1
  9. data/lib/pindo/command/appstore/metadata.rb +15 -1
  10. data/lib/pindo/command/appstore/screenshots.rb +15 -1
  11. data/lib/pindo/command/appstore/upload.rb +15 -1
  12. data/lib/pindo/command/deploy/build.rb +35 -20
  13. data/lib/pindo/command/deploy/bundleid.rb +15 -1
  14. data/lib/pindo/command/deploy/cert.rb +19 -2
  15. data/lib/pindo/command/deploy/check.rb +15 -1
  16. data/lib/pindo/command/deploy/configproj.rb +15 -1
  17. data/lib/pindo/command/deploy/confusecode.rb +15 -1
  18. data/lib/pindo/command/deploy/confuseproj.rb +11 -1
  19. data/lib/pindo/command/deploy/fabric.rb +10 -1
  20. data/lib/pindo/command/deploy/getitcinfo.rb +11 -1
  21. data/lib/pindo/command/deploy/iap.rb +12 -1
  22. data/lib/pindo/command/deploy/initconfig.rb +11 -1
  23. data/lib/pindo/command/deploy/itcinfo.rb +12 -1
  24. data/lib/pindo/command/deploy/pullconfig.rb +11 -1
  25. data/lib/pindo/command/deploy/pushconfig.rb +11 -1
  26. data/lib/pindo/command/deploy/quswark.rb +12 -1
  27. data/lib/pindo/command/deploy/quswauth.rb +10 -1
  28. data/lib/pindo/command/deploy/reportbug.rb +11 -1
  29. data/lib/pindo/command/deploy/resign.rb +12 -1
  30. data/lib/pindo/command/deploy/updateconfig.rb +11 -1
  31. data/lib/pindo/command/deploy/uploadipa.rb +11 -1
  32. data/lib/pindo/command/env/dreamstudio.rb +13 -1
  33. data/lib/pindo/command/env/quarkenv.rb +13 -1
  34. data/lib/pindo/command/env/swarkenv.rb +13 -1
  35. data/lib/pindo/command/env/workhard.rb +13 -1
  36. data/lib/pindo/command/gplay/iap.rb +21 -5
  37. data/lib/pindo/command/gplay/itcapp.rb +19 -5
  38. data/lib/pindo/command/gplay/metadata.rb +23 -5
  39. data/lib/pindo/command/gplay/screenshots.rb +23 -5
  40. data/lib/pindo/command/gplay/upload.rb +21 -5
  41. data/lib/pindo/command/gplay.rb +8 -8
  42. data/lib/pindo/command/ios/adhoc.rb +18 -3
  43. data/lib/pindo/command/ios/autobuild.rb +22 -7
  44. data/lib/pindo/command/ios/autoresign.rb +18 -3
  45. data/lib/pindo/command/ios/build.rb +18 -4
  46. data/lib/pindo/command/ipa/autoresign.rb +35 -4
  47. data/lib/pindo/command/ipa/import.rb +19 -1
  48. data/lib/pindo/command/ipa/output.rb +39 -4
  49. data/lib/pindo/command/{pgyer → jps}/apptest.rb +35 -24
  50. data/lib/pindo/command/jps/bind.rb +191 -0
  51. data/lib/pindo/command/{pgyer → jps}/comment.rb +19 -19
  52. data/lib/pindo/command/{pgyer → jps}/download.rb +20 -20
  53. data/lib/pindo/command/{pgyer → jps}/login.rb +9 -9
  54. data/lib/pindo/command/{pgyer → jps}/resign.rb +40 -25
  55. data/lib/pindo/command/{pgyer → jps}/upload.rb +60 -43
  56. data/lib/pindo/command/jps.rb +18 -0
  57. data/lib/pindo/command/lib/forcepush.rb +15 -1
  58. data/lib/pindo/command/lib/push.rb +15 -1
  59. data/lib/pindo/command/lib/update.rb +15 -1
  60. data/lib/pindo/command/repo/clone.rb +11 -1
  61. data/lib/pindo/command/repo/create.rb +13 -1
  62. data/lib/pindo/command/repo/login.rb +14 -3
  63. data/lib/pindo/command/repo/search.rb +14 -2
  64. data/lib/pindo/command/unity/apk.rb +14 -28
  65. data/lib/pindo/command/unity/autobuild.rb +13 -13
  66. data/lib/pindo/command/unity/ipa.rb +15 -29
  67. data/lib/pindo/command/unity/web.rb +15 -15
  68. data/lib/pindo/command/utils/boss.rb +19 -2
  69. data/lib/pindo/command/utils/clearcert.rb +18 -2
  70. data/lib/pindo/command/utils/device.rb +19 -2
  71. data/lib/pindo/command/utils/icon.rb +20 -2
  72. data/lib/pindo/command/utils/renewcert.rb +28 -3
  73. data/lib/pindo/command/utils/renewproj.rb +25 -2
  74. data/lib/pindo/command/utils/tgate.rb +28 -3
  75. data/lib/pindo/command/utils/xcassets.rb +20 -2
  76. data/lib/pindo/command/web/autobuild.rb +18 -3
  77. data/lib/pindo/command.rb +1 -1
  78. data/lib/pindo/module/pgyer/pgyerhelper.rb +185 -85
  79. data/lib/pindo/version.rb +1 -1
  80. metadata +30 -12
  81. data/lib/pindo/client/pgyer_feishu_oauth_cli.rb +0 -669
  82. data/lib/pindo/client/pgyerclient.rb +0 -466
  83. data/lib/pindo/client/pgyeruploadclient.rb +0 -517
  84. data/lib/pindo/command/pgyer.rb +0 -18
@@ -130,11 +130,25 @@ module Pindo
130
130
  description = nil
131
131
  result_data = PgyerHelper.share_instace.start_upload(app_info_obj:app_info_obj, ipa_file_upload:ipa_file_upload, description:description)
132
132
  if !result_data.nil? && !result_data["data"].nil? && !result_data["data"]["id"].nil?
133
- msg_data = PgyerHelper.share_instace.make_msg_data(app_info_obj:app_info_obj, app_version_info_obj:result_data["data"])
134
-
135
- PgyerHelper.share_instace.print_app_version_info(msg_data:msg_data)
133
+ PgyerHelper.share_instace.print_app_version_info(
134
+ app_info_obj: app_info_obj,
135
+ app_version_info_obj: result_data["data"]
136
+ )
136
137
  if @args_send_flag
137
- PgyerHelper.share_instace.send_apptest_wechat_msg(msg_data:msg_data)
138
+ # 始终发送给自己
139
+ PgyerHelper.share_instace.send_apptest_msg(
140
+ app_info_obj: app_info_obj,
141
+ app_version_info_obj: result_data["data"],
142
+ receiveType: "self"
143
+ )
144
+
145
+ # 额外发送到测试群
146
+ PgyerHelper.share_instace.send_apptest_msg(
147
+ app_info_obj: app_info_obj,
148
+ app_version_info_obj: result_data["data"],
149
+ chatEnv: "DevTest",
150
+ receiveType: "chat"
151
+ )
138
152
  end
139
153
  end
140
154
  end
@@ -14,7 +14,23 @@ module Pindo
14
14
  self.summary = '发布阶段ipa包重签名及上传'
15
15
 
16
16
  self.description = <<-DESC
17
- 发布阶段ipa包重签名及上传,用法: pindo iap autoresign path/to/demo.ipa --upload --send
17
+ 发布阶段ipa包重签名及上传。
18
+
19
+ 支持功能:
20
+
21
+ * IPA包重签名
22
+
23
+ * 上传到测试平台
24
+
25
+ * 发送测试通知
26
+
27
+ 使用示例:
28
+
29
+ $ pindo ipa autoresign demo.ipa # 仅重签名
30
+
31
+ $ pindo ipa autoresign demo.ipa --upload # 重签名并上传
32
+
33
+ $ pindo ipa autoresign demo.ipa --send # 重签名、上传并发送通知
18
34
  DESC
19
35
 
20
36
  self.arguments = [
@@ -121,10 +137,25 @@ module Pindo
121
137
  description = "提交包重签名"
122
138
  result_data = PgyerHelper.share_instace.start_upload(app_info_obj:app_info_obj, ipa_file_upload:ipa_file_upload, description:description)
123
139
  if !result_data.nil? && !result_data["data"].nil? && !result_data["data"]["id"].nil?
124
- msg_data = PgyerHelper.share_instace.make_msg_data(app_info_obj:app_info_obj, app_version_info_obj:result_data["data"])
125
- PgyerHelper.share_instace.print_app_version_info(msg_data:msg_data)
140
+ PgyerHelper.share_instace.print_app_version_info(
141
+ app_info_obj: app_info_obj,
142
+ app_version_info_obj: result_data["data"]
143
+ )
144
+ # 始终发送给自己
145
+ PgyerHelper.share_instace.send_apptest_msg(
146
+ app_info_obj: app_info_obj,
147
+ app_version_info_obj: result_data["data"],
148
+ receiveType: "self"
149
+ )
150
+
151
+ # 如果有 --send 参数,额外发送到测试群
126
152
  if @args_send_flag
127
- PgyerHelper.share_instace.send_apptest_wechat_msg(msg_data:msg_data)
153
+ PgyerHelper.share_instace.send_apptest_msg(
154
+ app_info_obj: app_info_obj,
155
+ app_version_info_obj: result_data["data"],
156
+ chatEnv: "DevTest",
157
+ receiveType: "chat"
158
+ )
128
159
  end
129
160
  end
130
161
  end
@@ -20,7 +20,25 @@ module Pindo
20
20
  self.summary = '提交时设置Xcode工程编译参数'
21
21
 
22
22
  self.description = <<-DESC
23
- 提交时设置Xcode工程编译参数.在工程目录下执行:pindo ipa import
23
+ 提交时设置Xcode工程编译参数。
24
+
25
+ 支持功能:
26
+
27
+ * 设置Xcode工程编译参数
28
+
29
+ * 自动增加版本号
30
+
31
+ * 支持编译后上传
32
+
33
+ 使用示例:
34
+
35
+ $ pindo ipa import # 设置编译参数
36
+
37
+ $ pindo ipa import --build # 设置参数并编译
38
+
39
+ $ pindo ipa import --upload # 设置参数、编译并上传
40
+
41
+ $ pindo ipa import --send # 设置参数、编译、上传并发送通知
24
42
  DESC
25
43
 
26
44
  self.arguments = [
@@ -21,7 +21,27 @@ module Pindo
21
21
  self.summary = '测试时设置Xcode工程编译参数并自动编译及上传'
22
22
 
23
23
  self.description = <<-DESC
24
- 测试时设置Xcode工程编译参数并自动编译及上传,在工程目录下执行:pindo ipa output --upload --send
24
+ 测试时设置Xcode工程编译参数并自动编译及上传。
25
+
26
+ 支持功能:
27
+
28
+ * 设置Xcode工程编译参数
29
+
30
+ * 自动编译生成IPA
31
+
32
+ * 上传到测试平台
33
+
34
+ * 发送测试通知
35
+
36
+ 使用示例:
37
+
38
+ $ pindo ipa output # 设置参数并编译
39
+
40
+ $ pindo ipa output --upload # 编译并上传
41
+
42
+ $ pindo ipa output --send # 编译、上传并发送通知
43
+
44
+ $ pindo ipa output --increase # 自动增加版本号
25
45
  DESC
26
46
 
27
47
  self.arguments = [
@@ -95,10 +115,25 @@ module Pindo
95
115
  if !ipa_file_upload.nil? && !app_info_obj.nil?
96
116
  result_data = PgyerHelper.share_instace.start_upload(app_info_obj:app_info_obj, ipa_file_upload:ipa_file_upload, description:nil)
97
117
  if !result_data.nil? && !result_data["data"].nil? && !result_data["data"]["id"].nil?
98
- msg_data = PgyerHelper.share_instace.make_msg_data(app_info_obj:app_info_obj, app_version_info_obj:result_data["data"])
99
- PgyerHelper.share_instace.print_app_version_info(msg_data:msg_data)
118
+ PgyerHelper.share_instace.print_app_version_info(
119
+ app_info_obj: app_info_obj,
120
+ app_version_info_obj: result_data["data"]
121
+ )
100
122
  if @args_send_flag
101
- PgyerHelper.share_instace.send_apptest_wechat_msg(msg_data:msg_data)
123
+ # 始终发送给自己
124
+ PgyerHelper.share_instace.send_apptest_msg(
125
+ app_info_obj: app_info_obj,
126
+ app_version_info_obj: result_data["data"],
127
+ receiveType: "self"
128
+ )
129
+
130
+ # 额外发送到测试群
131
+ PgyerHelper.share_instace.send_apptest_msg(
132
+ app_info_obj: app_info_obj,
133
+ app_version_info_obj: result_data["data"],
134
+ chatEnv: "DevTest",
135
+ receiveType: "chat"
136
+ )
102
137
  end
103
138
  end
104
139
  end
@@ -4,13 +4,13 @@ require 'pindo/module/pgyer/pgyerhelper'
4
4
 
5
5
  module Pindo
6
6
  class Command
7
- class Pgyer < Command
8
- class Apptest < Pgyer
7
+ class Jps < Command
8
+ class Apptest < Jps
9
9
 
10
- self.summary = '获取pgyer中指定app的测试链接和二维码'
10
+ self.summary = '获取jps中指定app的测试链接和二维码'
11
11
 
12
12
  self.description = <<-DESC
13
- 获取pgyer中指定app的测试链接和二维码。
13
+ 获取jps中指定app的测试链接和二维码。
14
14
 
15
15
  支持功能:
16
16
 
@@ -21,13 +21,13 @@ module Pindo
21
21
 
22
22
  使用示例:
23
23
 
24
- $ pindo pgyer apptest # 获取当前目录项目的测试链接
25
-
26
- $ pindo pgyer apptest --proj=demo # 获取指定项目的测试链接
27
-
28
- $ pindo pgyer apptest --list # 列出历史版本供选择
29
-
30
- $ pindo pgyer apptest --send # 发送测试信息
24
+ $ pindo jps apptest # 获取当前目录项目的测试链接
25
+
26
+ $ pindo jps apptest --proj=demo # 获取指定项目的测试链接
27
+
28
+ $ pindo jps apptest --list # 列出历史版本供选择
29
+
30
+ $ pindo jps apptest --send # 发送测试信息
31
31
  DESC
32
32
 
33
33
  self.arguments = [
@@ -36,10 +36,10 @@ module Pindo
36
36
 
37
37
  def self.options
38
38
  [
39
- ['--login', '强制再次登录pgyer网站'],
40
- ['--proj', '指定哪个项目(忽略大小写空格等等字符),用法:pindo pgyer apptest --proj=prancksoundv4'],
41
- ['--list', '列出上传记录并选择,用法:pindo pgyer apptest --list'],
42
- ['--send', '上传到之后是否发送测试信息,用法:pindo pgyer apptest --send'],
39
+ ['--login', '强制再次登录jps网站'],
40
+ ['--proj', '指定哪个项目(忽略大小写空格等等字符),用法:pindo jps apptest --proj=prancksoundv4'],
41
+ ['--list', '列出上传记录并选择,用法:pindo jps apptest --list'],
42
+ ['--send', '发送消息到项目群(注意:不带此参数也会发送给自己),用法:pindo jps apptest --send'],
43
43
  ].concat(super)
44
44
  end
45
45
 
@@ -65,7 +65,7 @@ module Pindo
65
65
  app_info_obj = PgyerHelper.share_instace.prepare_upload(working_directory:Dir.pwd, proj_name:@args_proj_name)
66
66
 
67
67
  if app_info_obj.nil?
68
- raise Informative, "#{proj_name} 错误, 请输入正确的App代号名称, pgyer网站没有该App"
68
+ raise Informative, "#{proj_name} 错误, 请输入正确的App代号名称, jps网站没有该App"
69
69
  end
70
70
 
71
71
  if !app_info_obj.nil?
@@ -76,17 +76,28 @@ module Pindo
76
76
  raise Informative, "没有找到上传记录"
77
77
  end
78
78
 
79
- msg_data = PgyerHelper.share_instace.make_msg_data(app_info_obj:app_info_obj, app_version_info_obj:version_item_obj)
79
+ PgyerHelper.share_instace.print_app_version_info(
80
+ app_info_obj: app_info_obj,
81
+ app_version_info_obj: version_item_obj
82
+ )
80
83
 
81
- PgyerHelper.share_instace.print_app_version_info(msg_data:msg_data)
84
+ # 始终发送给自己
85
+ PgyerHelper.share_instace.send_apptest_msg(
86
+ app_info_obj: app_info_obj,
87
+ app_version_info_obj: version_item_obj,
88
+ receiveType: "self"
89
+ )
82
90
 
91
+ # 如果有 --send 参数,额外发送到测试群
83
92
  if @args_send_flag
84
- # PgyerHelper.share_instace.send_apptest_msg(appId:app_info_obj["appId"], appVersionId:version_item_obj["id"], chatEnv: "PreFavTest", receiveType:"chat")
85
- # PgyerHelper.share_instace.send_apptest_msg(appId:app_info_obj["appId"], appVersionId:version_item_obj["id"], chatEnv: "DevTest", receiveType:"chat")
86
- else
87
- PgyerHelper.share_instace.send_apptest_msg(appId:app_info_obj["appId"], appVersionId:version_item_obj["id"], chatEnv: "", receiveType:"self")
93
+ PgyerHelper.share_instace.send_apptest_msg(
94
+ app_info_obj: app_info_obj,
95
+ app_version_info_obj: version_item_obj,
96
+ chatEnv: "DevTest",
97
+ receiveType: "chat"
98
+ )
88
99
  end
89
-
100
+
90
101
  end
91
102
 
92
103
  end
@@ -94,4 +105,4 @@ module Pindo
94
105
  end
95
106
  end
96
107
  end
97
- end
108
+ end
@@ -0,0 +1,191 @@
1
+ require 'highline/import'
2
+ require 'fileutils'
3
+ require 'json'
4
+
5
+ module Pindo
6
+ class Command
7
+ class Jps < Command
8
+ class Bind < Jps
9
+
10
+ self.summary = '将编译的包与工作流绑定'
11
+
12
+ self.description = <<-DESC
13
+ 将编译的包与工作流绑定。
14
+
15
+ 支持功能:
16
+
17
+ * 绑定编译包到指定工作流
18
+
19
+ * 管理包与工作流的关联关系
20
+
21
+ * 支持多个工作流配置
22
+
23
+ * 自动验证绑定状态
24
+
25
+ 使用示例:
26
+
27
+ $ pindo jps bind # 绑定当前目录的包到默认工作流
28
+
29
+ $ pindo jps bind --proj=demo # 绑定指定项目到工作流
30
+
31
+ $ pindo jps bind --workflow=release # 绑定到指定的工作流
32
+
33
+ $ pindo jps bind --list # 列出所有可用的工作流
34
+ DESC
35
+
36
+ self.arguments = [
37
+
38
+ ]
39
+
40
+ def self.options
41
+ [
42
+ ['--proj', '指定要绑定的项目名称'],
43
+ ['--workflow', '指定要绑定的工作流名称'],
44
+ ['--list', '列出所有可用的工作流'],
45
+ ['--unbind', '解除包与工作流的绑定'],
46
+ ['--status', '查看当前绑定状态']
47
+ ].concat(super)
48
+ end
49
+
50
+ def initialize(argv)
51
+ @args_proj_name = argv.option('proj')
52
+ @args_workflow_name = argv.option('workflow')
53
+ @args_list_flag = argv.flag?('list', false)
54
+ @args_unbind_flag = argv.flag?('unbind', false)
55
+ @args_status_flag = argv.flag?('status', false)
56
+
57
+ super
58
+ @additional_args = argv.remainder!
59
+ end
60
+
61
+ def validate!
62
+ super
63
+ if @args_list_flag || @args_status_flag
64
+ # 列出或查看状态时不需要其他参数
65
+ return
66
+ end
67
+
68
+ if @args_unbind_flag && @args_workflow_name.nil?
69
+ help! '解除绑定时需要指定工作流名称'
70
+ end
71
+ end
72
+
73
+ def run
74
+ if @args_list_flag
75
+ list_workflows
76
+ elsif @args_status_flag
77
+ show_bind_status
78
+ elsif @args_unbind_flag
79
+ unbind_workflow
80
+ else
81
+ bind_to_workflow
82
+ end
83
+ end
84
+
85
+ private
86
+
87
+ def list_workflows
88
+ puts "\n可用的工作流列表:"
89
+ puts "─────────────────────────────"
90
+
91
+ # TODO: 从配置或API获取工作流列表
92
+ workflows = [
93
+ { name: "dev", description: "开发环境工作流" },
94
+ { name: "test", description: "测试环境工作流" },
95
+ { name: "staging", description: "预发布环境工作流" },
96
+ { name: "release", description: "正式发布工作流" }
97
+ ]
98
+
99
+ workflows.each do |workflow|
100
+ puts " • #{workflow[:name].ljust(12)} - #{workflow[:description]}"
101
+ end
102
+ puts "─────────────────────────────\n"
103
+ end
104
+
105
+ def show_bind_status
106
+ puts "\n当前绑定状态:"
107
+ puts "─────────────────────────────"
108
+
109
+ # TODO: 从配置或API获取当前绑定状态
110
+ proj_name = @args_proj_name || get_current_project_name
111
+
112
+ if proj_name
113
+ puts " 项目名称: #{proj_name}"
114
+ puts " 绑定状态: 已绑定"
115
+ puts " 工作流: release"
116
+ puts " 绑定时间: #{Time.now.strftime('%Y-%m-%d %H:%M:%S')}"
117
+ puts " 最后构建: #123"
118
+ else
119
+ puts " 当前没有绑定任何工作流"
120
+ end
121
+ puts "─────────────────────────────\n"
122
+ end
123
+
124
+ def bind_to_workflow
125
+ proj_name = @args_proj_name || get_current_project_name
126
+ workflow_name = @args_workflow_name || "dev"
127
+
128
+ if proj_name.nil? || proj_name.empty?
129
+ raise Informative, "无法确定项目名称,请使用 --proj 参数指定"
130
+ end
131
+
132
+ puts "\n正在绑定包到工作流..."
133
+ puts " 项目: #{proj_name}"
134
+ puts " 工作流: #{workflow_name}"
135
+
136
+ # TODO: 调用JPS API进行实际绑定
137
+ # result = JpsClient.bind_workflow(
138
+ # project: proj_name,
139
+ # workflow: workflow_name
140
+ # )
141
+
142
+ puts "\n✅ 绑定成功!"
143
+ puts " 包 '#{proj_name}' 已成功绑定到工作流 '#{workflow_name}'"
144
+ puts " 下次构建将自动触发该工作流"
145
+ end
146
+
147
+ def unbind_workflow
148
+ proj_name = @args_proj_name || get_current_project_name
149
+ workflow_name = @args_workflow_name
150
+
151
+ if proj_name.nil? || proj_name.empty?
152
+ raise Informative, "无法确定项目名称,请使用 --proj 参数指定"
153
+ end
154
+
155
+ puts "\n正在解除绑定..."
156
+ puts " 项目: #{proj_name}"
157
+ puts " 工作流: #{workflow_name}"
158
+
159
+ # TODO: 调用JPS API进行解除绑定
160
+ # result = JpsClient.unbind_workflow(
161
+ # project: proj_name,
162
+ # workflow: workflow_name
163
+ # )
164
+
165
+ puts "\n✅ 解除绑定成功!"
166
+ puts " 包 '#{proj_name}' 已从工作流 '#{workflow_name}' 解除绑定"
167
+ end
168
+
169
+ def get_current_project_name
170
+ # 尝试从当前目录获取项目名称
171
+ current_dir = Dir.pwd
172
+
173
+ # 1. 尝试从git仓库名获取
174
+ if File.directory?(File.join(current_dir, ".git"))
175
+ git_config = File.join(current_dir, ".git", "config")
176
+ if File.exist?(git_config)
177
+ config_content = File.read(git_config)
178
+ if config_content =~ /url = .*[\/:]([^\/]+?)(?:\.git)?$/
179
+ return $1
180
+ end
181
+ end
182
+ end
183
+
184
+ # 2. 尝试从目录名获取
185
+ File.basename(current_dir)
186
+ end
187
+
188
+ end
189
+ end
190
+ end
191
+ end
@@ -5,14 +5,14 @@ require 'pindo/module/pgyer/pgyerhelper'
5
5
 
6
6
  module Pindo
7
7
  class Command
8
- class Pgyer < Command
9
- class Comment < Pgyer
8
+ class Jps < Command
9
+ class Comment < Jps
10
10
 
11
- self.summary = '修改pgyer中已经上传安装包的备注信息'
11
+ self.summary = '修改jps中已经上传安装包的备注信息'
12
12
 
13
13
  self.description = <<-DESC
14
- 修改pgyer中已经上传安装包的备注信息。
15
-
14
+ 修改jps中已经上传安装包的备注信息。
15
+
16
16
  支持功能:
17
17
 
18
18
  * 修改版本备注
@@ -21,11 +21,11 @@ module Pindo
21
21
 
22
22
  使用示例:
23
23
 
24
- $ pindo pgyer comment # 修改当前目录项目的最新版本备注
25
-
26
- $ pindo pgyer comment --proj=demo # 修改指定项目的版本备注
27
-
28
- $ pindo pgyer comment --list # 列出历史版本供选择修改
24
+ $ pindo jps comment # 修改当前目录项目的最新版本备注
25
+
26
+ $ pindo jps comment --proj=demo # 修改指定项目的版本备注
27
+
28
+ $ pindo jps comment --list # 列出历史版本供选择修改
29
29
  DESC
30
30
 
31
31
  self.arguments = [
@@ -34,10 +34,10 @@ module Pindo
34
34
 
35
35
  def self.options
36
36
  [
37
- ['--login', '强制再次登录pgyer网站'],
38
- ['--proj', '指定哪个项目(忽略大小写空格等等字符),用法:pindo pgyer comment --proj=prancksoundv4'],
39
- ['--list', '列出上传记录并选择,用法:pindo pgyer comment --list'],
40
-
37
+ ['--login', '强制再次登录jps网站'],
38
+ ['--proj', '指定哪个项目(忽略大小写空格等等字符),用法:pindo jps comment --proj=prancksoundv4'],
39
+ ['--list', '列出上传记录并选择,用法:pindo jps comment --list'],
40
+
41
41
  ].concat(super)
42
42
  end
43
43
 
@@ -59,21 +59,21 @@ module Pindo
59
59
  end
60
60
 
61
61
  def run
62
-
62
+
63
63
  PgyerHelper.share_instace.setForeLogin(beforeLogin:@args_login_flag)
64
64
  app_info_obj = PgyerHelper.share_instace.prepare_upload(working_directory:Dir.pwd, proj_name:@args_proj_name)
65
65
 
66
66
  if app_info_obj.nil?
67
- raise Informative, "#{proj_name} 错误, 请输入正确的App代号名称, pgyer网站没有该App"
67
+ raise Informative, "#{proj_name} 错误, 请输入正确的App代号名称, jps网站没有该App"
68
68
  end
69
69
 
70
-
70
+
71
71
  version_item_obj = PgyerHelper.share_instace.get_versioon_history_item(app_info_obj:app_info_obj, list_select_flat:@args_list_flag)
72
72
 
73
73
  if version_item_obj.nil?
74
74
  raise Informative, "没有找到上传记录"
75
75
  end
76
-
76
+
77
77
  PgyerHelper.share_instace.modify_coment(app_info_obj:app_info_obj, version_item_obj:version_item_obj)
78
78
 
79
79
  end
@@ -81,4 +81,4 @@ module Pindo
81
81
  end
82
82
  end
83
83
  end
84
- end
84
+ end
@@ -6,14 +6,14 @@ require 'open-uri'
6
6
 
7
7
  module Pindo
8
8
  class Command
9
- class Pgyer < Command
10
- class Download < Pgyer
9
+ class Jps < Command
10
+ class Download < Jps
11
11
 
12
12
 
13
- self.summary = '从pgyer下载指定app的安装包'
13
+ self.summary = '从jps下载指定app的安装包'
14
14
 
15
15
  self.description = <<-DESC
16
- pgyer下载指定app的安装包。
16
+ jps下载指定app的安装包。
17
17
 
18
18
  支持功能:
19
19
 
@@ -23,11 +23,11 @@ module Pindo
23
23
 
24
24
  使用示例:
25
25
 
26
- $ pindo pgyer download # 下载当前目录项目的最新版本
27
-
28
- $ pindo pgyer download --proj=demo # 下载指定项目的安装包
29
-
30
- $ pindo pgyer download --list # 列出历史版本供选择下载
26
+ $ pindo jps download # 下载当前目录项目的最新版本
27
+
28
+ $ pindo jps download --proj=demo # 下载指定项目的安装包
29
+
30
+ $ pindo jps download --list # 列出历史版本供选择下载
31
31
  DESC
32
32
 
33
33
  self.arguments = [
@@ -36,9 +36,9 @@ module Pindo
36
36
 
37
37
  def self.options
38
38
  [
39
- ['--login', '强制再次登录pgyer网站'],
40
- ['--list', '列出上传记录并选择,用法:pindo pgyer download --list'],
41
- ['--proj', '指定哪个项目(忽略大小写空格等等字符),用法:pindo pgyer download --proj=prancksoundv4'],
39
+ ['--login', '强制再次登录jps网站'],
40
+ ['--list', '列出上传记录并选择,用法:pindo jps download --list'],
41
+ ['--proj', '指定哪个项目(忽略大小写空格等等字符),用法:pindo jps download --proj=prancksoundv4'],
42
42
  ].concat(super)
43
43
  end
44
44
 
@@ -65,7 +65,7 @@ module Pindo
65
65
  app_info_obj = PgyerHelper.share_instace.prepare_upload(working_directory:Dir.pwd, proj_name:@args_proj_name)
66
66
 
67
67
  if app_info_obj.nil?
68
- raise Informative, "#{proj_name} 错误, 请输入正确的App代号名称, pgyer网站没有该App"
68
+ raise Informative, "#{proj_name} 错误, 请输入正确的App代号名称, jps网站没有该App"
69
69
  end
70
70
 
71
71
  version_item_obj = PgyerHelper.share_instace.get_versioon_history_item(app_info_obj:app_info_obj, list_select_flat:@args_list_flag)
@@ -73,10 +73,10 @@ module Pindo
73
73
  if version_item_obj.nil?
74
74
  raise Informative, "没有找到上传记录"
75
75
  end
76
-
76
+
77
77
  download_url = version_item_obj["cdnUrl"]
78
78
 
79
- base_name = [app_info_obj["appName"], version_item_obj["appVersion"], version_item_obj["incId"]].join("_")
79
+ base_name = [app_info_obj["projectName"], version_item_obj["projectVersion"], version_item_obj["incId"]].join("_")
80
80
  base_name = base_name + File.extname(download_url)
81
81
  # key_proj_name = proj_name.downcase.strip.gsub(/[\s\-_]/, '')
82
82
  base_name = base_name.strip.gsub(/[\s]/, '').downcase
@@ -84,7 +84,7 @@ module Pindo
84
84
  puts "文件名: #{file_name}"
85
85
  puts "下载中..."
86
86
  # File.binwrite(file_name, FastlaneCore::Helper.open_uri(download_url).read)
87
-
87
+
88
88
 
89
89
 
90
90
  # 使用选项参数
@@ -98,17 +98,17 @@ module Pindo
98
98
 
99
99
  URI.open(download_url, :content_length_proc => lambda { |total|
100
100
  total_num = total
101
- total_size = sprintf("%.2f", 1.00 * total_num / 1024 /1024 )
101
+ total_size = sprintf("%.2f", 1.00 * total_num / 1024 /1024 )
102
102
  }, :progress_proc => lambda { |index_num|
103
103
 
104
104
  progress_str = sprintf("%.2f", 100.0 * index_num / total_num )
105
- total_size = sprintf("%.2f", 1.00 * total_num / 1024 /1024 )
105
+ total_size = sprintf("%.2f", 1.00 * total_num / 1024 /1024 )
106
106
  index = 40.0 * index_num / total_num
107
107
  download_message = "已下载:#{progress_str}\%【" + (char_in * (index/1).floor).ljust(40.0, char_out) + "】Total: #{total_size} M"
108
108
  Funlog.instance.fancyinfo_update(download_message)
109
109
 
110
110
  }) do |file|
111
- File.binwrite(file_name, file.read)
111
+ File.binwrite(file_name, file.read)
112
112
  end
113
113
 
114
114
  Funlog.instance.fancyinfo_success(download_message)
@@ -119,4 +119,4 @@ module Pindo
119
119
  end
120
120
  end
121
121
  end
122
- end
122
+ end