pindo 5.13.7 → 5.13.10
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/git_handler.rb +247 -42
- data/lib/pindo/command/android/autobuild.rb +104 -31
- data/lib/pindo/command/android/autoresign.rb +23 -322
- data/lib/pindo/command/android/keystore.rb +7 -130
- data/lib/pindo/command/appstore/adhocbuild.rb +52 -15
- data/lib/pindo/command/appstore/autobuild.rb +104 -8
- data/lib/pindo/command/appstore/autoresign.rb +3 -5
- data/lib/pindo/command/ios/autobuild.rb +96 -32
- data/lib/pindo/command/ios/build.rb +8 -186
- data/lib/pindo/command/jps/media.rb +146 -0
- data/lib/pindo/command/jps/upload.rb +49 -21
- data/lib/pindo/command/jps.rb +1 -0
- data/lib/pindo/command/unity/autobuild.rb +141 -32
- data/lib/pindo/command/unity/packpush.rb +5 -8
- data/lib/pindo/command/utils/repoinit.rb +0 -2
- data/lib/pindo/command/utils/tag.rb +58 -26
- data/lib/pindo/command/utils.rb +0 -1
- data/lib/pindo/command/web/autobuild.rb +98 -34
- data/lib/pindo/command.rb +0 -56
- data/lib/pindo/config/build_info_manager.rb +7 -8
- data/lib/pindo/module/android/android_config_helper.rb +2 -11
- data/lib/pindo/module/appselect.rb +15 -41
- data/lib/pindo/module/appstore/itcapp_helper.rb +3 -6
- data/lib/pindo/module/build/build_helper.rb +28 -18
- data/lib/pindo/module/build/git_repo_helper.rb +284 -405
- data/lib/pindo/module/cert/pem_helper.rb +3 -6
- data/lib/pindo/module/pgyer/pgyerhelper.rb +193 -25
- data/lib/pindo/module/task/model/appstore/appstore_task.rb +5 -0
- data/lib/pindo/module/task/model/build/android_build_adhoc_task.rb +13 -187
- data/lib/pindo/module/task/model/build/android_build_dev_task.rb +36 -34
- data/lib/pindo/module/task/model/build/android_build_gplay_task.rb +13 -187
- data/lib/pindo/module/task/model/build/ios_build_adhoc_task.rb +9 -6
- data/lib/pindo/module/task/model/build/ios_build_appstore_task.rb +9 -6
- data/lib/pindo/module/task/model/build/ios_build_dev_task.rb +37 -32
- data/lib/pindo/module/task/model/build/web_build_dev_task.rb +7 -5
- data/lib/pindo/module/task/model/build_task.rb +8 -11
- data/lib/pindo/module/task/model/git/git_commit_task.rb +118 -0
- data/lib/pindo/module/task/model/git/git_tag_task.rb +125 -0
- data/lib/pindo/module/task/model/git_task.rb +75 -0
- data/lib/pindo/module/task/model/jps/jps_message_task.rb +178 -0
- data/lib/pindo/module/task/model/{jps_resign_task.rb → jps/jps_resign_task.rb} +14 -23
- data/lib/pindo/module/task/model/jps/jps_upload_media_task.rb +248 -0
- data/lib/pindo/module/task/model/{jps_upload_task.rb → jps/jps_upload_task.rb} +39 -94
- data/lib/pindo/module/task/model/jps_task.rb +43 -0
- data/lib/pindo/module/task/model/{ipa_local_resign_task.rb → resign/ipa_local_resign_task.rb} +7 -2
- data/lib/pindo/module/task/model/unity/unity_config_task.rb +103 -0
- data/lib/pindo/module/task/model/{unity_export_task.rb → unity/unity_export_task.rb} +76 -78
- data/lib/pindo/module/task/model/unity/unity_update_task.rb +95 -0
- data/lib/pindo/module/task/model/unity/unity_yoo_asset_task.rb +156 -0
- data/lib/pindo/module/task/model/unity_task.rb +118 -0
- data/lib/pindo/module/task/pindo_task.rb +101 -1
- data/lib/pindo/module/task/task_manager.rb +29 -24
- data/lib/pindo/module/unity/nuget_helper.rb +7 -7
- data/lib/pindo/module/unity/unity_command_helper.rb +188 -0
- data/lib/pindo/module/unity/unity_env_helper.rb +208 -0
- data/lib/pindo/module/unity/unity_helper.rb +189 -746
- data/lib/pindo/module/unity/unity_proc_helper.rb +390 -0
- data/lib/pindo/options/core/global_options_state.rb +96 -26
- data/lib/pindo/options/core/option_configuration.rb +3 -0
- data/lib/pindo/options/core/option_item.rb +36 -0
- data/lib/pindo/options/groups/build_options.rb +23 -6
- data/lib/pindo/options/groups/git_options.rb +115 -0
- data/lib/pindo/options/groups/jps_options.rb +7 -0
- data/lib/pindo/options/groups/option_group.rb +15 -0
- data/lib/pindo/options/groups/unity_options.rb +49 -0
- data/lib/pindo/options/options.rb +2 -0
- data/lib/pindo/version.rb +2 -2
- metadata +25 -14
- data/lib/pindo/base/githelper.rb +0 -686
- data/lib/pindo/base/pindocontext.rb +0 -602
- data/lib/pindo/command/utils/feishu.rb +0 -134
- data/lib/pindo/module/build/version_helper.rb +0 -146
- data/lib/pindo/module/task/model/git_tag_task.rb +0 -80
|
@@ -14,24 +14,6 @@ module Pindo
|
|
|
14
14
|
end
|
|
15
15
|
end
|
|
16
16
|
|
|
17
|
-
def delete_libtarget_firebase_shell(project_path)
|
|
18
|
-
puts "[-] 开始检查并删除 Unity-iPhone下的Firebase Crashlytics脚本..."
|
|
19
|
-
if File.directory?(File.join(project_path, 'Unity')) && File.exist?(File.join(project_path, 'Unity', 'Unity-iPhone.xcodeproj'))
|
|
20
|
-
unity_project_path = File.join(project_path, 'Unity', 'Unity-iPhone.xcodeproj')
|
|
21
|
-
xcdoe_unitylib_project = Xcodeproj::Project::open(unity_project_path)
|
|
22
|
-
xcdoe_unitylib_project.targets.each do |target|
|
|
23
|
-
target.shell_script_build_phases&.each do |phase|
|
|
24
|
-
if phase.name.eql?("Crashlytics Run Script")
|
|
25
|
-
puts " 从target:#{target.name}中删除: #{phase.name} ..."
|
|
26
|
-
target.build_phases.delete(phase)
|
|
27
|
-
end
|
|
28
|
-
end
|
|
29
|
-
end
|
|
30
|
-
xcdoe_unitylib_project.save()
|
|
31
|
-
puts "[✔] 完成检查并删除 Unity-iPhone下的Firebase Crashlytics脚本..."
|
|
32
|
-
end
|
|
33
|
-
end
|
|
34
|
-
|
|
35
17
|
def unity_project?(project_path)
|
|
36
18
|
# 检查Unity工程的关键文件和目录
|
|
37
19
|
project_settings_path = File.join(project_path, "ProjectSettings")
|
|
@@ -208,6 +190,34 @@ module Pindo
|
|
|
208
190
|
target_dir: target_dir
|
|
209
191
|
)
|
|
210
192
|
end
|
|
193
|
+
|
|
194
|
+
# 加载 JPSBuildConfig.json 并设置项目名称到 GlobalOptionsState
|
|
195
|
+
# @param project_dir [String] 项目目录
|
|
196
|
+
# @return [String, nil] 项目名称(如果存在)
|
|
197
|
+
def load_jps_build_config(project_dir)
|
|
198
|
+
# 检测工程类型:Unity 工程配置在 ProjectSettings 目录
|
|
199
|
+
config_file = if unity_project?(project_dir)
|
|
200
|
+
File.join(project_dir, 'ProjectSettings', 'JPSBuildConfig.json')
|
|
201
|
+
else
|
|
202
|
+
File.join(project_dir, 'JPSBuildConfig.json')
|
|
203
|
+
end
|
|
204
|
+
|
|
205
|
+
return nil unless File.exist?(config_file)
|
|
206
|
+
|
|
207
|
+
begin
|
|
208
|
+
config = JSON.parse(File.read(config_file))
|
|
209
|
+
project_name = config['project_name']
|
|
210
|
+
if project_name && !project_name.empty?
|
|
211
|
+
# 设置到 GlobalOptionsState
|
|
212
|
+
Pindo::Options::GlobalOptionsState.instance[:proj] = project_name
|
|
213
|
+
puts "使用 JPS 配置的项目名称: #{project_name}"
|
|
214
|
+
return project_name
|
|
215
|
+
end
|
|
216
|
+
rescue => e
|
|
217
|
+
puts "加载 JPSBuildConfig.json 失败: #{e.message}" if ENV['PINDO_VERBOSE'] == '1'
|
|
218
|
+
end
|
|
219
|
+
nil
|
|
220
|
+
end
|
|
211
221
|
end
|
|
212
222
|
|
|
213
223
|
end
|