pindo 5.18.4 → 5.18.5
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/command/android/autobuild.rb +4 -6
- data/lib/pindo/command/appstore/adhocbuild.rb +3 -3
- data/lib/pindo/command/appstore/autobuild.rb +3 -3
- data/lib/pindo/command/appstore/autoresign.rb +6 -2
- data/lib/pindo/command/appstore/cert.rb +12 -6
- data/lib/pindo/command/appstore/getitcinfo.rb +10 -8
- data/lib/pindo/command/appstore/iap.rb +9 -9
- data/lib/pindo/command/appstore/initconfig.rb +6 -7
- data/lib/pindo/command/appstore/itcinfo.rb +12 -12
- data/lib/pindo/command/appstore/metadata.rb +7 -6
- data/lib/pindo/command/appstore/screenshots.rb +7 -6
- data/lib/pindo/command/appstore/tag.rb +7 -4
- data/lib/pindo/command/gplay/iap.rb +7 -6
- data/lib/pindo/command/gplay/metadata.rb +7 -6
- data/lib/pindo/command/gplay/screenshots.rb +7 -6
- data/lib/pindo/command/ios/applovin.rb +9 -8
- data/lib/pindo/command/ios/autobuild.rb +1 -1
- data/lib/pindo/command/ios/autoresign.rb +6 -2
- data/lib/pindo/command/ios/cert.rb +11 -6
- data/lib/pindo/command/ios/fixproj.rb +9 -6
- data/lib/pindo/command/ios/podlint.rb +10 -5
- data/lib/pindo/command/ios/podpush.rb +13 -6
- data/lib/pindo/command/ios/podupdate.rb +10 -6
- data/lib/pindo/command/jps/download.rb +11 -10
- data/lib/pindo/command/jps/login.rb +8 -7
- data/lib/pindo/command/jps/upload.rb +8 -13
- data/lib/pindo/command/repo.rb +0 -6
- data/lib/pindo/command/unity/autobuild.rb +7 -12
- data/lib/pindo/command/unity/packpush.rb +14 -8
- data/lib/pindo/command/utils/renewcert.rb +15 -13
- data/lib/pindo/command/utils/repoinit.rb +12 -6
- data/lib/pindo/command/utils.rb +7 -7
- data/lib/pindo/command/web/autobuild.rb +6 -9
- data/lib/pindo/command/web/run.rb +9 -8
- data/lib/pindo/module/android/android_build_helper.rb +6 -6
- data/lib/pindo/module/android/keystore_helper.rb +1 -1
- data/lib/pindo/module/cert/cert_helper.rb +1 -1
- data/lib/pindo/options/core/global_options_state.rb +1 -1
- data/lib/pindo/options/core/option_item.rb +1 -1
- data/lib/pindo/options/groups/appstore_options.rb +114 -0
- data/lib/pindo/options/groups/build_options.rb +82 -4
- data/lib/pindo/options/groups/cert_options.rb +0 -52
- data/lib/pindo/options/groups/common_options.rb +27 -0
- data/lib/pindo/options/groups/global_options.rb +18 -0
- data/lib/pindo/options/groups/ios_tool_options.rb +60 -0
- data/lib/pindo/options/groups/jps_options.rb +41 -0
- data/lib/pindo/options/groups/option_group.rb +1 -1
- data/lib/pindo/options/groups/pod_options.rb +37 -0
- data/lib/pindo/options/groups/unity_options.rb +4 -4
- data/lib/pindo/options/groups/utils_options.rb +125 -0
- data/lib/pindo/options/options.rb +6 -0
- data/lib/pindo/version.rb +1 -1
- metadata +7 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 0c5570599c0e84edb77c22267e890c57f736800bc046581d7a902e28b4b5c33f
|
|
4
|
+
data.tar.gz: 46b689df14719e8a7b0ef3af23e209d9e70484b3915b45a02c8c014ab1d2ddb3
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: c2e5bb57d0a922210eff69f20fc7aabdf42660f01073e2a56378f32ff2380173eedd37b00e54f368051566903ac95c37f7139b17760c19c17ce889422e7078a8
|
|
7
|
+
data.tar.gz: 84d21199d7e08ad161a286090fbbc40c0a421f021f654dfde9b663fffc2c0921927e6a95a7cc0db21b074a1a4af0dcd28e354183bcf4bd5bb318dc178cf0a37b
|
|
@@ -96,25 +96,23 @@ module Pindo
|
|
|
96
96
|
# 定义此命令使用的参数项
|
|
97
97
|
def self.option_items
|
|
98
98
|
@option_items ||= Pindo::Options::OptionGroup.merge(
|
|
99
|
-
Pindo::Options::BuildOptions.select(:bundle_name
|
|
99
|
+
Pindo::Options::BuildOptions.select(:bundle_name, :release, :skipclean, :skipvalidate, :injectsigning),
|
|
100
100
|
Pindo::Options::JPSOptions.select(:conf, :upload, :media, :bind, :send),
|
|
101
101
|
Pindo::Options::UnityOptions.select(:skiplib, :skipyoo),
|
|
102
|
-
Pindo::Options::UnityOptions.select_with_defaults(
|
|
102
|
+
Pindo::Options::UnityOptions.select_with_defaults(skipmacro: true),
|
|
103
103
|
Pindo::Options::TaskOptions.select(:multi),
|
|
104
104
|
Pindo::Options::GitOptions.all
|
|
105
105
|
)
|
|
106
106
|
end
|
|
107
107
|
|
|
108
108
|
def self.options
|
|
109
|
-
|
|
110
|
-
['--release', '使用Release模式构建']
|
|
111
|
-
].concat(option_items.map(&:to_claide_option)).concat(super)
|
|
109
|
+
option_items.map(&:to_claide_option).concat(super)
|
|
112
110
|
end
|
|
113
111
|
|
|
114
112
|
def initialize(argv)
|
|
115
113
|
@options = initialize_options(argv)
|
|
116
114
|
|
|
117
|
-
@args_release_flag =
|
|
115
|
+
@args_release_flag = @options[:release] || false
|
|
118
116
|
@args_conf = @options[:conf]
|
|
119
117
|
@args_bundle_name = @options[:bundle_name] # 从 @options 获取,确保能被缓存
|
|
120
118
|
|
|
@@ -116,9 +116,9 @@ module Pindo
|
|
|
116
116
|
@args_upload_flag = @options[:send] || @options[:upload]
|
|
117
117
|
@args_conf = @options[:conf]
|
|
118
118
|
@args_increase_flag = @options[:increase]
|
|
119
|
-
@args_skip_config =
|
|
120
|
-
@args_skip_lib =
|
|
121
|
-
@args_skip_yoo =
|
|
119
|
+
@args_skip_config = @options[:skipmacro] || false
|
|
120
|
+
@args_skip_lib = @options[:skiplib] || false
|
|
121
|
+
@args_skip_yoo = @options[:skipyoo] || false
|
|
122
122
|
|
|
123
123
|
super
|
|
124
124
|
@additional_args = argv.remainder!
|
|
@@ -89,9 +89,9 @@ module Pindo
|
|
|
89
89
|
# 保存参数到实例变量
|
|
90
90
|
# 优先使用选项参数,如果没有则使用位置参数
|
|
91
91
|
@args_bundle_id = @options[:bundleid] || positional_bundleid
|
|
92
|
-
@args_skip_config =
|
|
93
|
-
@args_skip_lib =
|
|
94
|
-
@args_skip_yoo =
|
|
92
|
+
@args_skip_config = @options[:skipmacro] || false
|
|
93
|
+
@args_skip_lib = @options[:skiplib] || false
|
|
94
|
+
@args_skip_yoo = @options[:skipyoo] || false
|
|
95
95
|
|
|
96
96
|
# Git 参数
|
|
97
97
|
@args_release_branch = @options[:release_branch] || 'master'
|
|
@@ -78,9 +78,13 @@ module Pindo
|
|
|
78
78
|
# 添加工具参数(ToolOptions)
|
|
79
79
|
items.concat(Pindo::Options::ToolOptions.select(:ipa))
|
|
80
80
|
|
|
81
|
+
# 添加构建类型参数(BuildOptions)
|
|
82
|
+
items.concat(Pindo::Options::BuildOptions.select(
|
|
83
|
+
:dev, :adhoc, :develop_id, :build_type
|
|
84
|
+
))
|
|
85
|
+
|
|
81
86
|
# 添加证书相关参数(CertOptions)
|
|
82
87
|
items.concat(Pindo::Options::CertOptions.select(
|
|
83
|
-
:dev, :adhoc, :develop_id, :build_type,
|
|
84
88
|
:platform, :macos, :cert_mode, :storage, :match
|
|
85
89
|
))
|
|
86
90
|
|
|
@@ -141,7 +145,7 @@ module Pindo
|
|
|
141
145
|
end
|
|
142
146
|
|
|
143
147
|
# 标准化构建类型
|
|
144
|
-
@args_build_type = Pindo::Options::
|
|
148
|
+
@args_build_type = Pindo::Options::BuildOptions.normalize_build_type(@args_build_type)
|
|
145
149
|
|
|
146
150
|
# 处理平台类型
|
|
147
151
|
@platform_type = @options[:platform]
|
|
@@ -42,9 +42,12 @@ module Pindo
|
|
|
42
42
|
# 无位置参数
|
|
43
43
|
]
|
|
44
44
|
|
|
45
|
-
#
|
|
45
|
+
# 定义此命令使用的参数项
|
|
46
46
|
def self.option_items
|
|
47
|
-
@option_items ||= Pindo::Options::
|
|
47
|
+
@option_items ||= Pindo::Options::OptionGroup.merge(
|
|
48
|
+
Pindo::Options::BuildOptions.select(:build_type, :dev, :adhoc, :release, :develop_id),
|
|
49
|
+
Pindo::Options::CertOptions.all
|
|
50
|
+
)
|
|
48
51
|
end
|
|
49
52
|
|
|
50
53
|
# 命令的选项列表
|
|
@@ -56,9 +59,10 @@ module Pindo
|
|
|
56
59
|
# 使用 Options 模块初始化参数
|
|
57
60
|
@options = initialize_options(argv)
|
|
58
61
|
|
|
59
|
-
#
|
|
62
|
+
# 构建类型快捷参数
|
|
60
63
|
@args_dev_flag = @options[:dev]
|
|
61
64
|
@args_adhoc_flag = @options[:adhoc]
|
|
65
|
+
@args_release_flag = @options[:release]
|
|
62
66
|
@args_develop_id_flag = @options[:develop_id]
|
|
63
67
|
@args_macos_flag = @options[:macos]
|
|
64
68
|
|
|
@@ -78,20 +82,22 @@ module Pindo
|
|
|
78
82
|
@cert_mode ||= 'match' # 默认使用 Match 模式
|
|
79
83
|
@storage ||= 'git' # 默认使用 Git 存储
|
|
80
84
|
|
|
81
|
-
# 参数优先级:--develop_id > --adhoc > --dev > 用户指定的 build_type > 默认 appstore
|
|
85
|
+
# 参数优先级:--develop_id > --release > --adhoc > --dev > 用户指定的 build_type > 默认 appstore
|
|
82
86
|
if @args_develop_id_flag
|
|
83
87
|
@build_type = 'developer_id'
|
|
88
|
+
elsif @args_release_flag
|
|
89
|
+
@build_type = 'appstore'
|
|
84
90
|
elsif @args_adhoc_flag
|
|
85
91
|
@build_type = 'adhoc'
|
|
86
92
|
elsif @args_dev_flag
|
|
87
93
|
@build_type = 'dev'
|
|
88
94
|
elsif @build_type.nil? || @build_type.empty?
|
|
89
|
-
@build_type = 'appstore'
|
|
95
|
+
@build_type = 'appstore'
|
|
90
96
|
end
|
|
91
97
|
# 如果用户明确指定了 --build_type,则保持用户指定的值
|
|
92
98
|
|
|
93
99
|
# 标准化构建类型(dev -> development, release -> appstore)
|
|
94
|
-
@build_type = Pindo::Options::
|
|
100
|
+
@build_type = Pindo::Options::BuildOptions.normalize_build_type(@build_type)
|
|
95
101
|
|
|
96
102
|
# 处理平台类型
|
|
97
103
|
if @args_macos_flag
|
|
@@ -31,18 +31,20 @@ module Pindo
|
|
|
31
31
|
self.arguments = [
|
|
32
32
|
]
|
|
33
33
|
|
|
34
|
+
def self.option_items
|
|
35
|
+
@option_items ||= Pindo::Options::AppStoreOptions.select(:metadata, :screenshots, :overwrite)
|
|
36
|
+
end
|
|
37
|
+
|
|
34
38
|
def self.options
|
|
35
|
-
|
|
36
|
-
['--metadata', '获取metadata信息'],
|
|
37
|
-
['--screenshots', '下载商店截屏'],
|
|
38
|
-
['--overwrite', '覆盖已存在的文件'],
|
|
39
|
-
].concat(super)
|
|
39
|
+
option_items.map(&:to_claide_option).concat(super)
|
|
40
40
|
end
|
|
41
41
|
|
|
42
42
|
def initialize(argv)
|
|
43
|
-
@
|
|
44
|
-
|
|
45
|
-
@
|
|
43
|
+
@options = initialize_options(argv)
|
|
44
|
+
|
|
45
|
+
@upload_metadata_flag = @options[:metadata] || false
|
|
46
|
+
@upload_screenshots_flag = @options[:screenshots] || false
|
|
47
|
+
@over_write = @options[:overwrite] || false
|
|
46
48
|
|
|
47
49
|
super
|
|
48
50
|
end
|
|
@@ -31,13 +31,12 @@ module Pindo
|
|
|
31
31
|
self.arguments = [
|
|
32
32
|
]
|
|
33
33
|
|
|
34
|
-
def self.
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
['--download', '从appstore下载app的iap信息'],
|
|
38
|
-
['--boss', '生成boss的iap信息'],
|
|
34
|
+
def self.option_items
|
|
35
|
+
@option_items ||= Pindo::Options::AppStoreOptions.select(:check, :boss, :download)
|
|
36
|
+
end
|
|
39
37
|
|
|
40
|
-
|
|
38
|
+
def self.options
|
|
39
|
+
option_items.map(&:to_claide_option).concat(super)
|
|
41
40
|
end
|
|
42
41
|
|
|
43
42
|
def validate!
|
|
@@ -53,10 +52,11 @@ module Pindo
|
|
|
53
52
|
end
|
|
54
53
|
|
|
55
54
|
def initialize(argv)
|
|
55
|
+
@options = initialize_options(argv)
|
|
56
56
|
|
|
57
|
-
@check_flag =
|
|
58
|
-
@download_flag =
|
|
59
|
-
@boss_flag =
|
|
57
|
+
@check_flag = @options[:check] || false
|
|
58
|
+
@download_flag = @options[:download] || false
|
|
59
|
+
@boss_flag = @options[:boss] || false
|
|
60
60
|
|
|
61
61
|
super
|
|
62
62
|
end
|
|
@@ -49,28 +49,27 @@ module Pindo
|
|
|
49
49
|
|
|
50
50
|
# 定义此命令使用的参数项
|
|
51
51
|
def self.option_items
|
|
52
|
-
@option_items ||= Pindo::Options::
|
|
52
|
+
@option_items ||= Pindo::Options::OptionGroup.merge(
|
|
53
|
+
Pindo::Options::BuildOptions.select(:bundleid),
|
|
54
|
+
Pindo::Options::UtilsOptions.select(:test)
|
|
55
|
+
)
|
|
53
56
|
end
|
|
54
57
|
|
|
55
58
|
# 命令的选项列表
|
|
56
59
|
def self.options
|
|
57
|
-
|
|
58
|
-
['--test', '创建测试环境仓库']
|
|
59
|
-
].concat(option_items.map { |item| item.to_claide_option }).concat(super)
|
|
60
|
+
option_items.map(&:to_claide_option).concat(super)
|
|
60
61
|
end
|
|
61
62
|
|
|
62
63
|
def initialize(argv)
|
|
63
64
|
# 首先获取位置参数(向后兼容)
|
|
64
65
|
positional_bundleid = argv.shift_argument
|
|
65
66
|
|
|
66
|
-
# 获取 test 标志
|
|
67
|
-
@test_flag = argv.flag?('test', false)
|
|
68
|
-
|
|
69
67
|
# 使用 Options 模块初始化参数
|
|
70
68
|
@options = initialize_options(argv)
|
|
71
69
|
|
|
72
70
|
# 优先使用选项参数,如果没有则使用位置参数
|
|
73
71
|
@bundle_id = @options[:bundleid] || positional_bundleid
|
|
72
|
+
@test_flag = @options[:test] || false
|
|
74
73
|
|
|
75
74
|
super
|
|
76
75
|
@additional_args = argv.remainder!
|
|
@@ -33,22 +33,22 @@ module Pindo
|
|
|
33
33
|
self.arguments = [
|
|
34
34
|
]
|
|
35
35
|
|
|
36
|
+
def self.option_items
|
|
37
|
+
@option_items ||= Pindo::Options::AppStoreOptions.select(:metadata, :screenshots, :overwrite, :sync, :ipa)
|
|
38
|
+
end
|
|
39
|
+
|
|
36
40
|
def self.options
|
|
37
|
-
|
|
38
|
-
['--metadata', '上传元数据到iTunes Connect'],
|
|
39
|
-
['--screenshots', '上传截图到iTunes Connect'],
|
|
40
|
-
['--overwrite', '覆盖iTunes Connect中的截图'],
|
|
41
|
-
['--sync', '同步截图到iTunes Connect'],
|
|
42
|
-
['--ipa', '上传ipa到iTunes Connect'],
|
|
43
|
-
].concat(super)
|
|
41
|
+
option_items.map(&:to_claide_option).concat(super)
|
|
44
42
|
end
|
|
45
43
|
|
|
46
44
|
def initialize(argv)
|
|
47
|
-
@
|
|
48
|
-
|
|
49
|
-
@
|
|
50
|
-
@
|
|
51
|
-
@
|
|
45
|
+
@options = initialize_options(argv)
|
|
46
|
+
|
|
47
|
+
@upload_metadata_flag = @options[:metadata] || false
|
|
48
|
+
@upload_screenshots_flag = @options[:screenshots] || false
|
|
49
|
+
@overwrite_flag = @options[:overwrite] || false
|
|
50
|
+
@sync_flag = @options[:sync] || false
|
|
51
|
+
@upload_ipa_flag = @options[:ipa] || false
|
|
52
52
|
|
|
53
53
|
super
|
|
54
54
|
end
|
|
@@ -33,16 +33,17 @@ module Pindo
|
|
|
33
33
|
CLAide::Argument.new('path/to/config.json', false),
|
|
34
34
|
]
|
|
35
35
|
|
|
36
|
+
def self.option_items
|
|
37
|
+
@option_items ||= Pindo::Options::UtilsOptions.select(:down)
|
|
38
|
+
end
|
|
39
|
+
|
|
36
40
|
def self.options
|
|
37
|
-
|
|
38
|
-
['--download', '下载app的所有购买项,用法:pindo appstore metadata --download'],
|
|
39
|
-
].concat(super)
|
|
41
|
+
option_items.map(&:to_claide_option).concat(super)
|
|
40
42
|
end
|
|
41
43
|
|
|
42
44
|
def initialize(argv)
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
45
|
+
@options = initialize_options(argv)
|
|
46
|
+
@args_download_name = @options[:down] || false
|
|
46
47
|
super
|
|
47
48
|
end
|
|
48
49
|
|
|
@@ -33,16 +33,17 @@ module Pindo
|
|
|
33
33
|
CLAide::Argument.new('path/to/config.json', false),
|
|
34
34
|
]
|
|
35
35
|
|
|
36
|
+
def self.option_items
|
|
37
|
+
@option_items ||= Pindo::Options::UtilsOptions.select(:down)
|
|
38
|
+
end
|
|
39
|
+
|
|
36
40
|
def self.options
|
|
37
|
-
|
|
38
|
-
['--download', '下载app的所有购买项,用法:pindo appstore screenshots --download'],
|
|
39
|
-
].concat(super)
|
|
41
|
+
option_items.map(&:to_claide_option).concat(super)
|
|
40
42
|
end
|
|
41
43
|
|
|
42
44
|
def initialize(argv)
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
45
|
+
@options = initialize_options(argv)
|
|
46
|
+
@args_download_name = @options[:down] || false
|
|
46
47
|
super
|
|
47
48
|
end
|
|
48
49
|
|
|
@@ -24,14 +24,17 @@ module Pindo
|
|
|
24
24
|
self.arguments = [
|
|
25
25
|
]
|
|
26
26
|
|
|
27
|
+
def self.option_items
|
|
28
|
+
@option_items ||= Pindo::Options::AppStoreOptions.select(:delete)
|
|
29
|
+
end
|
|
30
|
+
|
|
27
31
|
def self.options
|
|
28
|
-
|
|
29
|
-
['--delete=TAG_NAME', '删除指定的tag'],
|
|
30
|
-
].concat(super)
|
|
32
|
+
option_items.map(&:to_claide_option).concat(super)
|
|
31
33
|
end
|
|
32
34
|
|
|
33
35
|
def initialize(argv)
|
|
34
|
-
@
|
|
36
|
+
@options = initialize_options(argv)
|
|
37
|
+
@delete_tag_name = @options[:delete]
|
|
35
38
|
super
|
|
36
39
|
end
|
|
37
40
|
|
|
@@ -35,16 +35,17 @@ DESC
|
|
|
35
35
|
CLAide::Argument.new('path/to/config.json', false),
|
|
36
36
|
]
|
|
37
37
|
|
|
38
|
+
def self.option_items
|
|
39
|
+
@option_items ||= Pindo::Options::UtilsOptions.select(:down)
|
|
40
|
+
end
|
|
41
|
+
|
|
38
42
|
def self.options
|
|
39
|
-
|
|
40
|
-
['--download', '下载app的所有购买项,用法:pindo appstore iap --download'],
|
|
41
|
-
].concat(super)
|
|
43
|
+
option_items.map(&:to_claide_option).concat(super)
|
|
42
44
|
end
|
|
43
45
|
|
|
44
46
|
def initialize(argv)
|
|
45
|
-
|
|
46
|
-
@args_download_name =
|
|
47
|
-
|
|
47
|
+
@options = initialize_options(argv)
|
|
48
|
+
@args_download_name = @options[:down] || false
|
|
48
49
|
super
|
|
49
50
|
end
|
|
50
51
|
|
|
@@ -37,16 +37,17 @@ DESC
|
|
|
37
37
|
CLAide::Argument.new('path/to/config.json', false),
|
|
38
38
|
]
|
|
39
39
|
|
|
40
|
+
def self.option_items
|
|
41
|
+
@option_items ||= Pindo::Options::UtilsOptions.select(:down)
|
|
42
|
+
end
|
|
43
|
+
|
|
40
44
|
def self.options
|
|
41
|
-
|
|
42
|
-
['--download', '下载app的所有购买项,用法:pindo appstore metadata --download'],
|
|
43
|
-
].concat(super)
|
|
45
|
+
option_items.map(&:to_claide_option).concat(super)
|
|
44
46
|
end
|
|
45
47
|
|
|
46
48
|
def initialize(argv)
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
49
|
+
@options = initialize_options(argv)
|
|
50
|
+
@args_download_name = @options[:down] || false
|
|
50
51
|
super
|
|
51
52
|
end
|
|
52
53
|
|
|
@@ -37,16 +37,17 @@ DESC
|
|
|
37
37
|
CLAide::Argument.new('path/to/config.json', false),
|
|
38
38
|
]
|
|
39
39
|
|
|
40
|
+
def self.option_items
|
|
41
|
+
@option_items ||= Pindo::Options::UtilsOptions.select(:down)
|
|
42
|
+
end
|
|
43
|
+
|
|
40
44
|
def self.options
|
|
41
|
-
|
|
42
|
-
['--download', '下载app的所有购买项,用法:pindo appstore screenshots --download'],
|
|
43
|
-
].concat(super)
|
|
45
|
+
option_items.map(&:to_claide_option).concat(super)
|
|
44
46
|
end
|
|
45
47
|
|
|
46
48
|
def initialize(argv)
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
49
|
+
@options = initialize_options(argv)
|
|
50
|
+
@args_download_name = @options[:down] || false
|
|
50
51
|
super
|
|
51
52
|
end
|
|
52
53
|
|
|
@@ -39,19 +39,20 @@ module Pindo
|
|
|
39
39
|
self.arguments = [
|
|
40
40
|
]
|
|
41
41
|
|
|
42
|
+
def self.option_items
|
|
43
|
+
@option_items ||= Pindo::Options::IosToolOptions.select(:appstore, :install, :upload)
|
|
44
|
+
end
|
|
45
|
+
|
|
42
46
|
def self.options
|
|
43
|
-
|
|
44
|
-
['--appstore', 'AppStore模式,一般不使用'],
|
|
45
|
-
['--install', '运行applovin安装脚本'],
|
|
46
|
-
['--upload', '保存SKAdNetwork IDs到本地配置'],
|
|
47
|
-
].concat(super)
|
|
47
|
+
option_items.map(&:to_claide_option).concat(super)
|
|
48
48
|
end
|
|
49
49
|
|
|
50
50
|
def initialize(argv)
|
|
51
|
+
@options = initialize_options(argv)
|
|
51
52
|
|
|
52
|
-
@args_appstore_flag =
|
|
53
|
-
@args_install_flag =
|
|
54
|
-
@args_upload_flag =
|
|
53
|
+
@args_appstore_flag = @options[:appstore] || false
|
|
54
|
+
@args_install_flag = @options[:install] || false
|
|
55
|
+
@args_upload_flag = @options[:upload] || false
|
|
55
56
|
|
|
56
57
|
super(argv)
|
|
57
58
|
@additional_args = argv.remainder!
|
|
@@ -102,7 +102,7 @@ module Pindo
|
|
|
102
102
|
Pindo::Options::BuildOptions.select(:bundleid, :build_type),
|
|
103
103
|
Pindo::Options::JPSOptions.select(:conf, :upload, :media, :bind, :send),
|
|
104
104
|
Pindo::Options::UnityOptions.select(:skiplib, :skipyoo),
|
|
105
|
-
Pindo::Options::UnityOptions.select_with_defaults(
|
|
105
|
+
Pindo::Options::UnityOptions.select_with_defaults(skipmacro: true),
|
|
106
106
|
Pindo::Options::TaskOptions.select(:multi),
|
|
107
107
|
Pindo::Options::GitOptions.all
|
|
108
108
|
)
|
|
@@ -75,9 +75,13 @@ module Pindo
|
|
|
75
75
|
# 添加工具参数(ToolOptions)
|
|
76
76
|
items.concat(Pindo::Options::ToolOptions.select(:ipa, :deploy))
|
|
77
77
|
|
|
78
|
+
# 添加构建类型参数(BuildOptions)
|
|
79
|
+
items.concat(Pindo::Options::BuildOptions.select(
|
|
80
|
+
:dev, :adhoc, :develop_id, :build_type
|
|
81
|
+
))
|
|
82
|
+
|
|
78
83
|
# 添加证书相关参数(CertOptions)
|
|
79
84
|
items.concat(Pindo::Options::CertOptions.select(
|
|
80
|
-
:dev, :adhoc, :develop_id, :build_type,
|
|
81
85
|
:platform, :macos, :cert_mode, :storage, :match
|
|
82
86
|
))
|
|
83
87
|
|
|
@@ -146,7 +150,7 @@ module Pindo
|
|
|
146
150
|
end
|
|
147
151
|
|
|
148
152
|
# 标准化构建类型
|
|
149
|
-
@build_type = Pindo::Options::
|
|
153
|
+
@build_type = Pindo::Options::BuildOptions.normalize_build_type(@build_type)
|
|
150
154
|
|
|
151
155
|
# 处理平台类型
|
|
152
156
|
@platform_type = @options[:platform]
|
|
@@ -57,9 +57,12 @@ module Pindo
|
|
|
57
57
|
# 暂无参数
|
|
58
58
|
]
|
|
59
59
|
|
|
60
|
-
#
|
|
60
|
+
# 定义此命令使用的参数项
|
|
61
61
|
def self.option_items
|
|
62
|
-
@option_items ||= Pindo::Options::
|
|
62
|
+
@option_items ||= Pindo::Options::OptionGroup.merge(
|
|
63
|
+
Pindo::Options::BuildOptions.select(:build_type, :dev, :adhoc, :release, :develop_id),
|
|
64
|
+
Pindo::Options::CertOptions.all
|
|
65
|
+
)
|
|
63
66
|
end
|
|
64
67
|
|
|
65
68
|
# 命令的选项列表
|
|
@@ -71,9 +74,10 @@ module Pindo
|
|
|
71
74
|
# 使用 Options 模块初始化参数
|
|
72
75
|
@options = initialize_options(argv)
|
|
73
76
|
|
|
74
|
-
#
|
|
77
|
+
# 构建类型快捷参数
|
|
75
78
|
@args_dev_flag = @options[:dev]
|
|
76
79
|
@args_adhoc_flag = @options[:adhoc]
|
|
80
|
+
@args_release_flag = @options[:release]
|
|
77
81
|
@args_develop_id_flag = @options[:develop_id]
|
|
78
82
|
@args_macos_flag = @options[:macos]
|
|
79
83
|
|
|
@@ -94,21 +98,22 @@ module Pindo
|
|
|
94
98
|
# 根据快捷参数确定构建类型
|
|
95
99
|
@build_type = @options[:build_type]
|
|
96
100
|
|
|
97
|
-
# 参数优先级:--develop_id > --adhoc > --dev > 用户指定的 build_type > 默认 dev
|
|
101
|
+
# 参数优先级:--develop_id > --release > --adhoc > --dev > 用户指定的 build_type > 默认 dev
|
|
98
102
|
if @args_develop_id_flag
|
|
99
103
|
@build_type = 'developer_id'
|
|
104
|
+
elsif @args_release_flag
|
|
105
|
+
@build_type = 'appstore'
|
|
100
106
|
elsif @args_adhoc_flag
|
|
101
107
|
@build_type = 'adhoc'
|
|
102
108
|
elsif @args_dev_flag
|
|
103
109
|
@build_type = 'dev'
|
|
104
110
|
elsif @build_type.nil? || @build_type.empty?
|
|
105
|
-
# build_type 为 nil 时,iOS cert 命令默认使用 dev
|
|
106
111
|
@build_type = 'dev'
|
|
107
112
|
end
|
|
108
113
|
# 如果用户明确指定了 --build_type,则保持用户指定的值
|
|
109
114
|
|
|
110
115
|
# 标准化构建类型(dev -> development, release -> appstore)
|
|
111
|
-
@build_type = Pindo::Options::
|
|
116
|
+
@build_type = Pindo::Options::BuildOptions.normalize_build_type(@build_type)
|
|
112
117
|
|
|
113
118
|
# 处理平台类型
|
|
114
119
|
@platform_type = @options[:platform]
|
|
@@ -19,7 +19,7 @@ module Pindo
|
|
|
19
19
|
|
|
20
20
|
* 删除 Unity-iPhone 项目中的 Firebase Crashlytics 脚本
|
|
21
21
|
|
|
22
|
-
*
|
|
22
|
+
* 批量修复模式 (--allproj): 自动扫描当前目录及 GoodPlatform/BaseiOS 下的所有 iOS 项目
|
|
23
23
|
|
|
24
24
|
使用示例:
|
|
25
25
|
|
|
@@ -27,7 +27,7 @@ module Pindo
|
|
|
27
27
|
|
|
28
28
|
$ pindo ios fixproj path/to/project # 修复指定目录的项目
|
|
29
29
|
|
|
30
|
-
$ pindo ios fixproj --
|
|
30
|
+
$ pindo ios fixproj --allproj # 扫描并修复所有 iOS 项目
|
|
31
31
|
DESC
|
|
32
32
|
|
|
33
33
|
# 定义位置参数
|
|
@@ -35,17 +35,20 @@ module Pindo
|
|
|
35
35
|
CLAide::Argument.new('path/to/project', true)
|
|
36
36
|
]
|
|
37
37
|
|
|
38
|
+
def self.option_items
|
|
39
|
+
@option_items ||= Pindo::Options::IosToolOptions.select(:allproj)
|
|
40
|
+
end
|
|
41
|
+
|
|
38
42
|
# 命令的选项列表
|
|
39
43
|
def self.options
|
|
40
|
-
|
|
41
|
-
['--auto', '自动扫描当前目录及 GoodPlatform/BaseiOS 下的 iOS 项目'],
|
|
42
|
-
].concat(super)
|
|
44
|
+
option_items.map(&:to_claide_option).concat(super)
|
|
43
45
|
end
|
|
44
46
|
|
|
45
47
|
def initialize(argv)
|
|
46
48
|
# 获取位置参数(项目路径)
|
|
47
49
|
@project_path = argv.shift_argument
|
|
48
|
-
@
|
|
50
|
+
@options = initialize_options(argv)
|
|
51
|
+
@auto_mode = @options[:allproj] || false
|
|
49
52
|
super(argv)
|
|
50
53
|
end
|
|
51
54
|
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
require 'highline/import'
|
|
2
2
|
require 'fileutils'
|
|
3
3
|
require 'json'
|
|
4
|
+
require 'pindo/options/options'
|
|
4
5
|
|
|
5
6
|
module Pindo
|
|
6
7
|
class Command
|
|
@@ -30,7 +31,7 @@ module Pindo
|
|
|
30
31
|
|
|
31
32
|
$ pindo ios podlint MyPod.podspec # 指定podspec文件
|
|
32
33
|
|
|
33
|
-
$ pindo ios podlint --
|
|
34
|
+
$ pindo ios podlint --path=~/MyPod # 指定pod库目录
|
|
34
35
|
|
|
35
36
|
$ pindo ios podlint --verbose # 显示详细输出
|
|
36
37
|
DESC
|
|
@@ -40,15 +41,19 @@ module Pindo
|
|
|
40
41
|
CLAide::Argument.new('podspec', true)
|
|
41
42
|
]
|
|
42
43
|
|
|
44
|
+
def self.option_items
|
|
45
|
+
@option_items ||= Pindo::Options::PodOptions.select(:path)
|
|
46
|
+
end
|
|
47
|
+
|
|
43
48
|
def self.options
|
|
44
|
-
|
|
45
|
-
['--p', '指定需要lint的pod库所在目录, 例如 --p=~/Users/xxx/MyPod'],
|
|
46
|
-
].concat(super)
|
|
49
|
+
option_items.map(&:to_claide_option).concat(super)
|
|
47
50
|
end
|
|
48
51
|
|
|
49
52
|
def initialize(argv)
|
|
50
53
|
@pod_spec_file = argv.shift_argument || nil
|
|
51
|
-
|
|
54
|
+
|
|
55
|
+
@options = initialize_options(argv)
|
|
56
|
+
@project_dir = @options[:path]
|
|
52
57
|
|
|
53
58
|
super(argv)
|
|
54
59
|
@additional_args = argv.remainder!
|