cocoapods-bb-PodAssistant 0.1.6 → 0.1.8
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/cocoapods-bb-PodAssistant/command/stable/init.rb +30 -0
- data/lib/cocoapods-bb-PodAssistant/command/stable/install.rb +38 -0
- data/lib/cocoapods-bb-PodAssistant/command/stable/sync.rb +32 -0
- data/lib/cocoapods-bb-PodAssistant/command/stable/update.rb +61 -0
- data/lib/cocoapods-bb-PodAssistant/command/stable.rb +51 -0
- data/lib/cocoapods-bb-PodAssistant/command.rb +6 -7
- data/lib/cocoapods-bb-PodAssistant/config/cache_path.rb +7 -1
- data/lib/cocoapods-bb-PodAssistant/config/source_manager.rb +48 -20
- data/lib/cocoapods-bb-PodAssistant/gem_version.rb +1 -1
- data/lib/cocoapods-bb-PodAssistant/helpers/git_cmd_helper.rb +5 -1
- data/lib/cocoapods-bb-PodAssistant/helpers/pod_module_helper.rb +44 -7
- data/lib/cocoapods-bb-PodAssistant/helpers/stable_env_helper.rb +115 -18
- data/lib/cocoapods-bb-PodAssistant/source_provider_hook.rb +3 -4
- metadata +12 -9
- data/lib/cocoapods-bb-PodAssistant/command/PodAssistant.rb +0 -44
- data/lib/cocoapods-bb-PodAssistant/command/stable/stable.rb +0 -168
- /data/lib/cocoapods-bb-PodAssistant/{command → babybus}/linkline/target-linkline.rb +0 -0
- /data/lib/cocoapods-bb-PodAssistant/{command → babybus}/linkline/targetValidator-linkline.rb +0 -0
- /data/lib/cocoapods-bb-PodAssistant/{command → babybus}/linkline/targetdefinition-linkline.rb +0 -0
- /data/lib/cocoapods-bb-PodAssistant/{command → babybus}/stable/podfile-linkline.rb +0 -0
- /data/lib/cocoapods-bb-PodAssistant/command/{linkline/linkline.rb → linkline.rb} +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 95c6d433814654744108bb1b8d1051ac00b37dff52e8d0c73fbb03bbb7d67d52
|
4
|
+
data.tar.gz: d804e3f603a8ed9e8612fb4edf6c5ed19ae543d2328dfaf92bf335664f0da421
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 75858bf2163338409042d5e4be54e38d6c08a8ea93df77341870af4a0425bd1dc9a1b8a905376775b958318b554b537d4a0b9ad0f822f92d67ed53b82d0ccf04
|
7
|
+
data.tar.gz: 8216d2c5d5df66e7ff8526ae9394ba0a11c1391ac3f6c835e997458417aacab84d3372b346f9caaa565f087679448d094719c5b80ad48c29aeb04de1ed4691d6
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require 'cocoapods-bb-PodAssistant/config/source_manager'
|
2
|
+
|
3
|
+
module Pod
|
4
|
+
class Command
|
5
|
+
class Stable < Command
|
6
|
+
class Init < Stable
|
7
|
+
|
8
|
+
self.summary = '[初始化项目yml配置] Generate a Stable yml config file from a Podfile.lock'
|
9
|
+
|
10
|
+
self.description = <<-DESC
|
11
|
+
通过项目`Podfile.lock`文件,生成`stable_specs_lock.yml`配置文件
|
12
|
+
DESC
|
13
|
+
|
14
|
+
def initialize(argv)
|
15
|
+
super
|
16
|
+
end
|
17
|
+
|
18
|
+
def run
|
19
|
+
# verify_podfile_exists!
|
20
|
+
source_manager = BB::SourceManager.new()
|
21
|
+
puts "[PodAssistant] 开始配置生成当前项目yml文件".yellow
|
22
|
+
# 生成本地yml配置
|
23
|
+
source_manager.generate_localStable
|
24
|
+
puts "[PodAssistant] `pod stable init` complete!".green
|
25
|
+
end
|
26
|
+
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
require 'cocoapods-bb-PodAssistant/config/source_manager'
|
2
|
+
|
3
|
+
module Pod
|
4
|
+
class Command
|
5
|
+
class Stable < Command
|
6
|
+
class Install < Stable
|
7
|
+
self.summary = '[命令同执行`pod install操作`] Install project dependencies according to versions from a Podfile.lock'
|
8
|
+
|
9
|
+
self.description = <<-DESC
|
10
|
+
Downloads all dependencies defined in `Podfile` and creates an Xcode
|
11
|
+
Pods library project in `./Pods`.
|
12
|
+
|
13
|
+
The Xcode project file should be specified in your `Podfile` like this:
|
14
|
+
|
15
|
+
project 'path/to/XcodeProject.xcodeproj'
|
16
|
+
|
17
|
+
If no project is specified, then a search for an Xcode project will
|
18
|
+
be made. If more than one Xcode project is found, the command will
|
19
|
+
raise an error.
|
20
|
+
|
21
|
+
This will configure the project to reference the Pods static library,
|
22
|
+
add a build configuration file, and add a post build script to copy
|
23
|
+
Pod resources.
|
24
|
+
|
25
|
+
This may return one of several error codes if it encounters problems.
|
26
|
+
* `1` Generic error code
|
27
|
+
* `31` Spec not found (i.e out-of-date source repos, mistyped Pod name etc...)
|
28
|
+
DESC
|
29
|
+
|
30
|
+
def run
|
31
|
+
puts "[PodAssistant] 开始执行 $ pod stable install".yellow
|
32
|
+
system "pod install"
|
33
|
+
puts "[PodAssistant] `pod stable install` complete!".green
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
require 'cocoapods-bb-PodAssistant/config/source_manager'
|
2
|
+
require 'cocoapods-bb-PodAssistant/helpers/git_cmd_helper'
|
3
|
+
require 'cocoapods-bb-PodAssistant/helpers/stable_env_helper'
|
4
|
+
require 'cocoapods'
|
5
|
+
|
6
|
+
module Pod
|
7
|
+
class Command
|
8
|
+
class Stable < Command
|
9
|
+
class Sync < Stable
|
10
|
+
|
11
|
+
self.summary = '[同步远端yml配置] sync a Stable yml config file'
|
12
|
+
|
13
|
+
self.description = <<-DESC
|
14
|
+
同步远端stable yml配置文件,并对本地文件进行合并操作
|
15
|
+
DESC
|
16
|
+
|
17
|
+
def initialize(argv)
|
18
|
+
super
|
19
|
+
end
|
20
|
+
|
21
|
+
def run
|
22
|
+
puts "开始合并远端stable yml数据".yellow
|
23
|
+
# 数据合并
|
24
|
+
source_manager = BB::SourceManager.new()
|
25
|
+
source_manager.merge_stable_data
|
26
|
+
puts "[PodAssistant] `pod stable sync` complete! Please execute the [pod install/ pod update] command".green
|
27
|
+
end
|
28
|
+
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
@@ -0,0 +1,61 @@
|
|
1
|
+
require 'cocoapods-bb-PodAssistant/config/source_manager'
|
2
|
+
|
3
|
+
module Pod
|
4
|
+
class Command
|
5
|
+
class Stable < Command
|
6
|
+
class Update < Stable
|
7
|
+
self.summary = '[命令同执行`pod update操作`] Update outdated project dependencies and create new ' \
|
8
|
+
'Podfile.lock'
|
9
|
+
|
10
|
+
self.description = <<-DESC
|
11
|
+
Updates the Pods identified by the specified `POD_NAMES`, which is a
|
12
|
+
space-delimited list of pod names. If no `POD_NAMES` are specified, it
|
13
|
+
updates all the Pods, ignoring the contents of the Podfile.lock. This
|
14
|
+
command is reserved for the update of dependencies; pod install should
|
15
|
+
be used to install changes to the Podfile.
|
16
|
+
DESC
|
17
|
+
|
18
|
+
self.arguments = [
|
19
|
+
CLAide::Argument.new('POD_NAMES', false, true),
|
20
|
+
]
|
21
|
+
|
22
|
+
def self.options
|
23
|
+
[
|
24
|
+
['--sync', '立即同步远端yml配置,更新组件信息'],
|
25
|
+
].concat(super)
|
26
|
+
end
|
27
|
+
|
28
|
+
def initialize(argv)
|
29
|
+
@pods = argv.arguments!
|
30
|
+
@sync = argv.flag?('sync')
|
31
|
+
super
|
32
|
+
end
|
33
|
+
|
34
|
+
def run
|
35
|
+
puts "[PodAssistant] 开始执行 $ pod stable update".yellow
|
36
|
+
# system "git checkout Podfile.lock"
|
37
|
+
source_manager = BB::SourceManager.new()
|
38
|
+
# verify_podfile_exists! # 系统提供api验证podfile是否ok
|
39
|
+
if @sync
|
40
|
+
puts "[PodAssistant] 需要同步组件信息#{@pods}".green
|
41
|
+
source_manager.merge_stable_data(@pods)
|
42
|
+
end
|
43
|
+
podStartTime = Time.new
|
44
|
+
if @pods.any?
|
45
|
+
pods_str = @pods.join(" ")
|
46
|
+
system "pod update #{pods_str}"
|
47
|
+
else
|
48
|
+
system "pod update"
|
49
|
+
end
|
50
|
+
podEndTime = Time.new
|
51
|
+
# 获取时间差
|
52
|
+
time = podEndTime - podStartTime
|
53
|
+
puts "[PodAssistant] pod update操作总耗时【#{time.to_s.send(:red)}秒】start:#{podStartTime} end:#{podEndTime}".green
|
54
|
+
|
55
|
+
source_manager.update_local_stable_from_podmodules(@pods)
|
56
|
+
puts "[PodAssistant] `pod stable update` complete!".green
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
@@ -0,0 +1,51 @@
|
|
1
|
+
require 'cocoapods-bb-PodAssistant/config/source_manager'
|
2
|
+
require 'cocoapods-bb-PodAssistant/config/cache_path'
|
3
|
+
require 'cocoapods-bb-PodAssistant/helpers'
|
4
|
+
|
5
|
+
require 'cocoapods-bb-PodAssistant/command/stable/init'
|
6
|
+
require 'cocoapods-bb-PodAssistant/command/stable/install'
|
7
|
+
require 'cocoapods-bb-PodAssistant/command/stable/update'
|
8
|
+
require 'cocoapods-bb-PodAssistant/command/stable/sync'
|
9
|
+
|
10
|
+
module Pod
|
11
|
+
|
12
|
+
# class StableOptions
|
13
|
+
# # define business specs,defalut is stable_specs
|
14
|
+
# option :business_specs, "stable_specs"
|
15
|
+
|
16
|
+
# # define custom lockSpecs tag
|
17
|
+
# option :tag, ""
|
18
|
+
|
19
|
+
# # define custom lockSpecs branch
|
20
|
+
# option :branch, ""
|
21
|
+
# end
|
22
|
+
|
23
|
+
class Command
|
24
|
+
class Stable < Command
|
25
|
+
self.abstract_command = true
|
26
|
+
|
27
|
+
self.summary = '拉取稳定Podfile.lock配置'
|
28
|
+
self.description = <<-DESC
|
29
|
+
拉取稳定lock配置插件。利用版本比对进行更新配置实现对组件版本控制管理。
|
30
|
+
DESC
|
31
|
+
|
32
|
+
self.default_subcommand = 'init'
|
33
|
+
|
34
|
+
#-----------------------------------------------------------------------#
|
35
|
+
|
36
|
+
extend Executable
|
37
|
+
executable :git
|
38
|
+
|
39
|
+
def validate!
|
40
|
+
super
|
41
|
+
banner! if @help
|
42
|
+
end
|
43
|
+
|
44
|
+
def run
|
45
|
+
puts "[PodAssistant] `pod stable` 帮助文档请查看�".yellow
|
46
|
+
# banner!
|
47
|
+
end
|
48
|
+
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
@@ -1,9 +1,8 @@
|
|
1
|
-
require 'cocoapods-bb-PodAssistant/command/PodAssistant'
|
2
1
|
#stable
|
3
|
-
require 'cocoapods-bb-PodAssistant/command/stable
|
4
|
-
require 'cocoapods-bb-PodAssistant/
|
2
|
+
require 'cocoapods-bb-PodAssistant/command/stable'
|
3
|
+
require 'cocoapods-bb-PodAssistant/babybus/stable/podfile-linkline'
|
5
4
|
#linkline
|
6
|
-
require 'cocoapods-bb-PodAssistant/command/linkline
|
7
|
-
require 'cocoapods-bb-PodAssistant/
|
8
|
-
require 'cocoapods-bb-PodAssistant/
|
9
|
-
require 'cocoapods-bb-PodAssistant/
|
5
|
+
require 'cocoapods-bb-PodAssistant/command/linkline'
|
6
|
+
require 'cocoapods-bb-PodAssistant/babybus/linkline/target-linkline'
|
7
|
+
require 'cocoapods-bb-PodAssistant/babybus/linkline/targetdefinition-linkline'
|
8
|
+
require 'cocoapods-bb-PodAssistant/babybus/linkline/targetValidator-linkline'
|
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'cocoapods-bb-PodAssistant/config/stable_source'
|
2
|
+
require 'cocoapods-bb-PodAssistant/helpers/pod_utils'
|
2
3
|
|
3
4
|
module BB
|
4
5
|
class Cache
|
@@ -7,10 +8,15 @@ module BB
|
|
7
8
|
stable_source = StableSource.stable_default_source
|
8
9
|
end
|
9
10
|
@stable_source = stable_source
|
11
|
+
@bundleId = BB::PodUtils.getProjectBundleIdentifier
|
12
|
+
if @bundleId.nil?
|
13
|
+
@bundleId = 'stable'
|
14
|
+
end
|
10
15
|
end
|
11
16
|
|
12
17
|
def cachePath()
|
13
|
-
|
18
|
+
# 缓存路径采用bundle包名区分,解决多产品同时打包问题
|
19
|
+
File.join(File.expand_path('~/.cache'), 'cocoapods-bb-PodAssistant',@bundleId,@stable_source.split('/').last.chomp('.git').to_s)
|
14
20
|
end
|
15
21
|
end
|
16
22
|
end
|
@@ -2,12 +2,15 @@ require 'cocoapods-bb-PodAssistant/helpers'
|
|
2
2
|
require 'cocoapods-bb-PodAssistant/config/stable_specs'
|
3
3
|
require 'cocoapods-bb-PodAssistant/helpers/stable_manager_helper'
|
4
4
|
require 'cocoapods-core'
|
5
|
+
require 'cocoapods-bb-PodAssistant/helpers/stable_env_helper'
|
5
6
|
|
6
7
|
# 数据源管理
|
7
8
|
module BB
|
8
9
|
class SourceManager
|
9
|
-
def initialize(
|
10
|
-
|
10
|
+
def initialize()
|
11
|
+
env = BB::StableEnv.new()
|
12
|
+
# puts "SourceManager env:#{env}".red
|
13
|
+
@businessSpecName = env.business_stable
|
11
14
|
@stableMgr = BB::StableManager.new()
|
12
15
|
end
|
13
16
|
|
@@ -91,10 +94,10 @@ module BB
|
|
91
94
|
localSpec.writeData(local_stable_yaml, stable_lock)
|
92
95
|
end
|
93
96
|
|
94
|
-
# 合并stable
|
95
|
-
def merge_stable_data()
|
97
|
+
# 合并stable数据,参数,支持传入更新某几个数据
|
98
|
+
def merge_stable_data(update_pods=[])
|
96
99
|
#4、show origin_stable_lock diff with local_stable_lock
|
97
|
-
new_stable_spec = compare_specs(fetch_local_stable_datas, fetch_origin_stable_datas)
|
100
|
+
new_stable_spec = compare_specs(fetch_local_stable_datas, fetch_origin_stable_datas, update_pods)
|
98
101
|
|
99
102
|
#5、rewirte local_stable_lock with origin_stable_lock
|
100
103
|
update_localstable_datas(new_stable_spec)
|
@@ -120,8 +123,8 @@ module BB
|
|
120
123
|
return result
|
121
124
|
end
|
122
125
|
|
123
|
-
# compare specs 参数1:本地,参数2
|
124
|
-
def compare_specs(local_specs, common_specs)
|
126
|
+
# compare specs 参数1:本地,参数2:远端,参数3:指定更新pod库
|
127
|
+
def compare_specs(local_specs, common_specs, update_pods=[])
|
125
128
|
added_projects = []
|
126
129
|
updated_projects = []
|
127
130
|
rollbacked_projects = []
|
@@ -144,15 +147,15 @@ module BB
|
|
144
147
|
elsif local_version != version
|
145
148
|
# puts "merge name:#{name} local_version:#{local_version} route_version:#{version}".red
|
146
149
|
# 版本不一致
|
147
|
-
if (version.is_a? String) && (local_version.is_a? String)
|
148
|
-
end
|
149
|
-
if versionGreat(version, local_version)
|
150
|
-
updated_projects << "【#{name}】 (#{local_version}) -> (#{version.to_s.send(:yellow)})"
|
151
|
-
else
|
152
|
-
rollbacked_projects << "【#{name}】 (#{version.to_s.send(:red)}) <- (#{local_version})"
|
153
|
-
end
|
154
150
|
podCoreName = subspec_podname(name)
|
155
|
-
|
151
|
+
if (update_pods.length == 0) || (update_pods.include?(podCoreName))
|
152
|
+
if versionGreat(version, local_version)
|
153
|
+
updated_projects << "【#{name}】 (#{local_version}) -> (#{version.to_s.send(:yellow)})"
|
154
|
+
else
|
155
|
+
rollbacked_projects << "【#{name}】 (#{version.to_s.send(:red)}) <- (#{local_version})"
|
156
|
+
end
|
157
|
+
need_update_pod_lists[podCoreName] = version
|
158
|
+
end
|
156
159
|
end
|
157
160
|
end
|
158
161
|
# 解决subspec组件同步更新版本信息
|
@@ -173,16 +176,20 @@ module BB
|
|
173
176
|
end
|
174
177
|
local_exist_ver = new_specs[name]
|
175
178
|
if local_exist_ver.nil?
|
176
|
-
|
177
|
-
|
179
|
+
if (update_pods.length == 0) || (update_pods.include?(name))
|
180
|
+
new_specs[name] = version
|
181
|
+
added_projects << "【#{name}】 (#{version.to_s.send(:green)})"
|
182
|
+
end
|
178
183
|
end
|
179
184
|
if array.is_a?(Array)
|
180
185
|
array.each do |name|
|
181
186
|
name = name.to_s
|
182
187
|
local_exist_ver = new_specs[name]
|
183
188
|
if local_exist_ver.nil?
|
184
|
-
|
185
|
-
|
189
|
+
if (update_pods.length == 0) || (update_pods.include?(name))
|
190
|
+
new_specs[name] = version
|
191
|
+
added_projects << "【#{name}】 (#{version.to_s.send(:green)})"
|
192
|
+
end
|
186
193
|
end
|
187
194
|
end
|
188
195
|
end
|
@@ -190,7 +197,6 @@ module BB
|
|
190
197
|
# step.3 匹配组件移除
|
191
198
|
removedata.each do |name|
|
192
199
|
name = name.to_s
|
193
|
-
# local_exist_ver = new_specs[name]
|
194
200
|
version = listdata[name]
|
195
201
|
if version
|
196
202
|
deleted_projects << "【#{name}】 (#{"delete".send(:red)}) <- (#{version})"
|
@@ -242,6 +248,8 @@ module BB
|
|
242
248
|
lockfile = podfile_lock
|
243
249
|
local_specs = {}
|
244
250
|
dependencies = lockfile.dependencies
|
251
|
+
pod_names = lockfile.pod_names
|
252
|
+
# dependencies依赖数据
|
245
253
|
dependencies.each do | dependency |
|
246
254
|
pod_name = dependency.name
|
247
255
|
if has_include_subspec(pod_name)
|
@@ -249,6 +257,7 @@ module BB
|
|
249
257
|
else
|
250
258
|
podCoreName = pod_name
|
251
259
|
end
|
260
|
+
# puts "podCoreName:#{podCoreName} pod_name:#{pod_name}".red
|
252
261
|
if dependency.external_source.is_a? Hash
|
253
262
|
# 指向分支
|
254
263
|
external_source = dependency.external_source
|
@@ -271,6 +280,25 @@ module BB
|
|
271
280
|
end
|
272
281
|
end
|
273
282
|
end
|
283
|
+
# 被依赖数据
|
284
|
+
pod_names.each do | pod_name |
|
285
|
+
if has_include_subspec(pod_name)
|
286
|
+
podCoreName = subspec_podname(pod_name)
|
287
|
+
else
|
288
|
+
podCoreName = pod_name
|
289
|
+
end
|
290
|
+
pod = local_specs[podCoreName]
|
291
|
+
# puts "podCoreName:#{podCoreName} pod:#{pod}".green
|
292
|
+
if pod.nil?
|
293
|
+
# 指向标签版本
|
294
|
+
version = lockfile.version(pod_name).to_s
|
295
|
+
if !version.empty? && !local_specs.has_key?(podCoreName)
|
296
|
+
local_specs[podCoreName] = version
|
297
|
+
# puts "[标签] #{podCoreName} => (#{version})".yellow
|
298
|
+
end
|
299
|
+
end
|
300
|
+
end
|
301
|
+
|
274
302
|
# Pod::UI.puts "yml配置数据:#{local_specs}"
|
275
303
|
if local_specs.length > 0
|
276
304
|
update_localstable_datas(local_specs)
|
@@ -1,4 +1,5 @@
|
|
1
1
|
# cache stable
|
2
|
+
require 'cocoapods'
|
2
3
|
|
3
4
|
######################################## Git Command ########################################
|
4
5
|
def configGitPath(gitPath)
|
@@ -66,7 +67,10 @@ def git_branch_exists?(branch)
|
|
66
67
|
end
|
67
68
|
|
68
69
|
def git_clone(source, path)
|
69
|
-
puts "git clone source:#{source} path:#{path}"
|
70
|
+
puts "git clone source:#{source} path:#{path}".yellow
|
71
|
+
if !File.directory?(path)
|
72
|
+
Dir.mkdir(path)
|
73
|
+
end
|
70
74
|
UI.section("Cloning `#{source}` into `#{path}`.") do
|
71
75
|
Dir.chdir(path) { git! ['clone', source] } #origin git command
|
72
76
|
end
|
@@ -158,16 +158,20 @@ module BB
|
|
158
158
|
need_update_pod_data={}
|
159
159
|
stable_hash = local_stable_data
|
160
160
|
podfile_hash.each do |podName,podfile_pod|
|
161
|
+
if podfile_pod.count == 0
|
162
|
+
puts "❌ podfile组件配置异常,请确认:method => REMOTE_VERSION是否配置\n组件信息如下:\n#{podName} => #{podfile_pod}".red
|
163
|
+
exit
|
164
|
+
end
|
161
165
|
podCoreName = @source_manager.subspec_podname(podName)
|
162
166
|
if (podName == podCoreName) || @source_manager.has_pod_subspec(podName, podCoreName)
|
163
167
|
pod = stable_hash[podCoreName]
|
164
168
|
if pod.nil? # stbale没有受版本控制
|
165
169
|
need_update_pod_data[podName] = podfile_pod
|
166
170
|
else
|
167
|
-
#
|
168
|
-
|
169
|
-
|
170
|
-
end
|
171
|
+
# if podCoreName == 'BBGameModule'
|
172
|
+
# succ = (pod == podfile_pod) ? true : false
|
173
|
+
# puts "[stable]podCoreName:#{podCoreName}(#{pod}) VS [podfile] podName:#{podName}(#{podfile_pod}) succ:#{succ}".green
|
174
|
+
# end
|
171
175
|
if pod == podfile_pod
|
172
176
|
if podName != podCoreName
|
173
177
|
need_update_pod_data[podName] = podfile_pod
|
@@ -206,9 +210,42 @@ module BB
|
|
206
210
|
need_update_pod_data[podName] = pod
|
207
211
|
end
|
208
212
|
else
|
209
|
-
|
210
|
-
|
211
|
-
|
213
|
+
is_podfile_data = false
|
214
|
+
newPod = nil
|
215
|
+
if pod.is_a? (Hash)
|
216
|
+
stable_branch = pod[:branch]
|
217
|
+
stable_git = pod[:git]
|
218
|
+
if stable_git.nil?
|
219
|
+
stable_git = pod[:git_format]
|
220
|
+
end
|
221
|
+
if (stable_branch && !stable_branch.empty?) || (stable_git && !stable_git.empty?)
|
222
|
+
puts "[PodAssistant] '#{podName}', '#{podfile_pod}' 以podfile配置为主[分支=>标签]."
|
223
|
+
newPod = podfile_pod
|
224
|
+
is_podfile_data = true
|
225
|
+
else
|
226
|
+
newPod = pod
|
227
|
+
end
|
228
|
+
elsif pod.is_a? (String)
|
229
|
+
if pod.include?(':branch') || pod.include?(':git') || pod.include?(':git_format')
|
230
|
+
puts "[PodAssistant] '#{podName}', '#{podfile_pod}' 以podfile配置为主[分支=>标签]."
|
231
|
+
newPod = podfile_pod
|
232
|
+
is_podfile_data = true
|
233
|
+
else
|
234
|
+
newPod = pod
|
235
|
+
end
|
236
|
+
else
|
237
|
+
newPod = podfile_pod
|
238
|
+
is_podfile_data = true
|
239
|
+
end
|
240
|
+
if is_podfile_data == true
|
241
|
+
need_update_pod_data[podCoreName] = newPod
|
242
|
+
if podName != podCoreName
|
243
|
+
need_update_pod_data[podName] = newPod
|
244
|
+
end
|
245
|
+
else
|
246
|
+
if podName != podCoreName
|
247
|
+
need_update_pod_data[podName] = newPod
|
248
|
+
end
|
212
249
|
end
|
213
250
|
end
|
214
251
|
end
|
@@ -1,36 +1,133 @@
|
|
1
|
-
require 'cocoapods-bb-PodAssistant/helpers/git_cmd_helper'
|
2
1
|
require 'cocoapods-bb-PodAssistant/config/stable_source'
|
3
2
|
|
4
3
|
module BB
|
5
|
-
class StableEnv
|
6
|
-
def initialize(
|
7
|
-
if stable_source.nil?
|
8
|
-
stable_source = StableSource.stable_default_source
|
9
|
-
end
|
10
|
-
@stable_source = stable_source
|
11
|
-
@stable_branch = stable_branch
|
12
|
-
@stable_tag = stable_tag
|
13
|
-
|
4
|
+
class StableEnv
|
5
|
+
def initialize()
|
14
6
|
@cache = BB::Cache.new()
|
15
7
|
configGitPath(@cache.cachePath)
|
8
|
+
# 自动加载stable环境
|
9
|
+
loadStaleEnv
|
10
|
+
if verify_stable_env_exists == false
|
11
|
+
puts "[PodAssistant] ❌工程没有配置stable环境".red
|
12
|
+
else
|
13
|
+
fetch_stale_git # 自动拉取远端git仓库数据
|
14
|
+
end
|
16
15
|
end
|
17
16
|
|
18
17
|
# stable 环境,执行pod stable
|
19
18
|
def loadStaleEnv
|
20
|
-
|
19
|
+
unless File.exist?(File.join(Pathname.pwd, "Podfile"))
|
20
|
+
err_msg = "- Error: #{File.join(Pathname.pwd, "Podfile")} is not exit"
|
21
|
+
Pod::UI.puts "#{err_msg}".send(:red)
|
22
|
+
exit -9001
|
23
|
+
end
|
24
|
+
|
25
|
+
#获取podfile 内容
|
26
|
+
#1、删除所有注释行,避免干扰
|
27
|
+
#2、正则匹配,筛选出stable 方法
|
28
|
+
#3、执行stable 方法,获取配置
|
29
|
+
podfileContent = File.read(File.join(Pathname.pwd, "Podfile"))
|
30
|
+
podfileContent_vaild = podfileContent.lines.reject { |line| line.strip.start_with?("#") }.join
|
31
|
+
stableCommand = podfileContent_vaild.match(/^\s*stable!\s*'([^']+)'(?:,\s*(\w+):\s*'([^']+)')*/m)
|
32
|
+
unless stableCommand
|
33
|
+
puts "- Error: not stable define in the podfile! you can define to podfile:".red
|
34
|
+
puts "stable! 'https://git.babybus.co/babybus/ios/Specs/stable-specs.git', specs:'<业务线stbale名称-可选>', tag:'<标签-可选>', branch:'<分支-可选>'".green
|
35
|
+
exit -9002
|
36
|
+
end
|
37
|
+
eval(stableCommand.to_s)
|
21
38
|
end
|
22
39
|
|
23
|
-
# 开发环境,执行pod install/update
|
24
|
-
def
|
40
|
+
# 拉取stable仓库代码 hook开发环境,执行pod install/update
|
41
|
+
def system_clone_stable_git
|
25
42
|
cachePath = @cache.cachePath
|
26
|
-
puts "hook [pod install/update]
|
27
|
-
if Dir.exist?(File.join(cachePath))
|
28
|
-
`cd #{cachePath}; git switch main; git pull --all`
|
29
|
-
else
|
43
|
+
puts "hook [pod install/update] fetch stable git=>#{cachePath}"
|
44
|
+
if !Dir.exist?(File.join(cachePath))
|
30
45
|
clonePath = File.dirname(cachePath)
|
31
46
|
FileUtils.mkdir_p clonePath
|
32
|
-
|
47
|
+
system "git clone #{@stable_source} #{cachePath}"
|
48
|
+
end
|
49
|
+
if verify_branch_exists
|
50
|
+
if stable_tag || stable_branch
|
51
|
+
if stable_branch
|
52
|
+
system "cd #{cachePath}; git checkout #{stable_branch}; git reset --hard origin/#{stable_branch}"
|
53
|
+
end
|
54
|
+
if stable_tag
|
55
|
+
system "cd #{cachePath}; git checkout #{stable_tag};"
|
56
|
+
end
|
57
|
+
else
|
58
|
+
result =`git symbolic-ref refs/remotes/origin/HEAD`
|
59
|
+
protechBranch = result.split("/").last.strip || default_branch
|
60
|
+
system "cd #{cachePath}; git checkout #{protechBranch}; git reset --hard origin/#{protechBranch}"
|
61
|
+
end
|
62
|
+
else
|
63
|
+
puts "❌ stable配置无效分支信息source:#{@stable_source} branch:#{stable_branch}".red
|
64
|
+
exit
|
65
|
+
end
|
66
|
+
end
|
67
|
+
def fetch_stale_git
|
68
|
+
system_clone_stable_git
|
69
|
+
end
|
70
|
+
|
71
|
+
# ========podfile 约定函数规则,切勿修改
|
72
|
+
#help load podfile option
|
73
|
+
def stable!(source, options = {})
|
74
|
+
@stable_source = source
|
75
|
+
if options.has_key?(:specs)
|
76
|
+
@businessSpec = options[:specs]
|
77
|
+
end
|
78
|
+
@stable_tag = options[:tag] if options.has_key?(:tag)
|
79
|
+
@stable_branch = options[:branch] if options.has_key?(:branch)
|
80
|
+
puts "###stable env => [stable公共源]:#{source} [业务线源名称]:#{@businessSpec} branch:#{@stable_branch} tag:#{@stable_tag}".green
|
81
|
+
end
|
82
|
+
|
83
|
+
def stable_source
|
84
|
+
return @stable_source
|
85
|
+
end
|
86
|
+
def default_branch
|
87
|
+
return "main"
|
88
|
+
end
|
89
|
+
def stable_branch
|
90
|
+
if @stable_branch.nil?
|
91
|
+
return default_branch
|
92
|
+
end
|
93
|
+
return @stable_branch
|
94
|
+
end
|
95
|
+
def stable_tag
|
96
|
+
return @stable_tag
|
97
|
+
end
|
98
|
+
def business_stable
|
99
|
+
return @businessSpec
|
100
|
+
end
|
101
|
+
# 验证stable环境是否存在
|
102
|
+
def verify_stable_env_exists
|
103
|
+
return @stable_source.empty? ? false : true
|
104
|
+
end
|
105
|
+
# tag是否存在
|
106
|
+
def verify_tag_exists
|
107
|
+
tag = stable_tag
|
108
|
+
if tag
|
109
|
+
cachePath = @cache.cachePath
|
110
|
+
# result = system "cd #{cachePath}; git tag"
|
111
|
+
result = `cd #{cachePath}; git tag`
|
112
|
+
puts "verify_tag_exists:#{result}".red
|
113
|
+
return result.split("\n").include?(tag)
|
114
|
+
end
|
115
|
+
return false
|
116
|
+
end
|
117
|
+
# 分支是否存在
|
118
|
+
def verify_branch_exists
|
119
|
+
branch = stable_branch
|
120
|
+
if branch
|
121
|
+
cachePath = @cache.cachePath
|
122
|
+
# result = system "cd #{cachePath}; git tag"
|
123
|
+
branchs = `cd #{cachePath}; git branch -a`
|
124
|
+
if branchs
|
125
|
+
branchs = branchs.split("\n")
|
126
|
+
return branchs.include?(branch) || branchs.include?(' remotes/origin/' + branch) || branchs.include?('remotes/origin/' + branch)
|
33
127
|
end
|
128
|
+
puts "verify_branch_exists:#{branchs}".red
|
129
|
+
end
|
130
|
+
return false
|
34
131
|
end
|
35
132
|
end
|
36
133
|
end
|
@@ -42,6 +42,7 @@ end
|
|
42
42
|
|
43
43
|
$podStartTime = 0
|
44
44
|
$podEndTime = 0
|
45
|
+
$source_manager = nil
|
45
46
|
|
46
47
|
module BB
|
47
48
|
|
@@ -49,8 +50,7 @@ module BB
|
|
49
50
|
begin
|
50
51
|
$podStartTime = Time.new
|
51
52
|
puts "[PodAssistant] plugin hook pre_install".yellow
|
52
|
-
|
53
|
-
env.loadDeveloperEnv
|
53
|
+
$source_manager = BB::SourceManager.new() # 自动拉取远端git仓库数据
|
54
54
|
if $pluginIsVerbose == true
|
55
55
|
# home路径下是否存在.AllPodsTimeAndSize.csv的隐藏文件
|
56
56
|
if File.exist?("#{Dir.home}/.AllPodsTimeAndSize.csv")
|
@@ -68,9 +68,8 @@ module BB
|
|
68
68
|
end
|
69
69
|
Pod::HooksManager.register("cocoapods-bb-PodAssistant", :post_install) do |installer|
|
70
70
|
begin
|
71
|
-
source_manager = BB::SourceManager.new(@businessSpec)
|
72
71
|
# 生成本地yml配置
|
73
|
-
source_manager.generate_localStable
|
72
|
+
$source_manager.generate_localStable
|
74
73
|
$podEndTime = Time.new
|
75
74
|
puts "[PodAssistant] plugin hook post_install".yellow
|
76
75
|
puts "[PodAssistant] pod库下载耗时 GitCloneAllSize: #{$gitAllSize} M GitCloneAllTime: #{$cloneAllTime} S CDNDownloadAllSize: #{$pluginCurrentZipAllSize} M CDNAllTime: #{$downloadAllTime} S CDNDownloadAllTime: #{$cdnDownloadAllTime} S CDNUnzipAllTime: #{$cdnUnZipAllTime} S"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cocoapods-bb-PodAssistant
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- humin
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-10-
|
11
|
+
date: 2023-10-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: cocoapods-core
|
@@ -79,14 +79,17 @@ files:
|
|
79
79
|
- lib/cocoapods-bb-PodAssistant/babybus/business/babybus_install_environment.rb
|
80
80
|
- lib/cocoapods-bb-PodAssistant/babybus/helpers/babybus_info_plist_helper.rb
|
81
81
|
- lib/cocoapods-bb-PodAssistant/babybus/installer/post_install_hooks.rb
|
82
|
+
- lib/cocoapods-bb-PodAssistant/babybus/linkline/target-linkline.rb
|
83
|
+
- lib/cocoapods-bb-PodAssistant/babybus/linkline/targetValidator-linkline.rb
|
84
|
+
- lib/cocoapods-bb-PodAssistant/babybus/linkline/targetdefinition-linkline.rb
|
85
|
+
- lib/cocoapods-bb-PodAssistant/babybus/stable/podfile-linkline.rb
|
82
86
|
- lib/cocoapods-bb-PodAssistant/command.rb
|
83
|
-
- lib/cocoapods-bb-PodAssistant/command/
|
84
|
-
- lib/cocoapods-bb-PodAssistant/command/
|
85
|
-
- lib/cocoapods-bb-PodAssistant/command/
|
86
|
-
- lib/cocoapods-bb-PodAssistant/command/
|
87
|
-
- lib/cocoapods-bb-PodAssistant/command/
|
88
|
-
- lib/cocoapods-bb-PodAssistant/command/stable/
|
89
|
-
- lib/cocoapods-bb-PodAssistant/command/stable/stable.rb
|
87
|
+
- lib/cocoapods-bb-PodAssistant/command/linkline.rb
|
88
|
+
- lib/cocoapods-bb-PodAssistant/command/stable.rb
|
89
|
+
- lib/cocoapods-bb-PodAssistant/command/stable/init.rb
|
90
|
+
- lib/cocoapods-bb-PodAssistant/command/stable/install.rb
|
91
|
+
- lib/cocoapods-bb-PodAssistant/command/stable/sync.rb
|
92
|
+
- lib/cocoapods-bb-PodAssistant/command/stable/update.rb
|
90
93
|
- lib/cocoapods-bb-PodAssistant/config/cache_path.rb
|
91
94
|
- lib/cocoapods-bb-PodAssistant/config/source_manager.rb
|
92
95
|
- lib/cocoapods-bb-PodAssistant/config/stable_source.rb
|
@@ -1,44 +0,0 @@
|
|
1
|
-
module Pod
|
2
|
-
class Command
|
3
|
-
# This is an example of a cocoapods plugin adding a top-level subcommand
|
4
|
-
# to the 'pod' command.
|
5
|
-
#
|
6
|
-
# You can also create subcommands of existing or new commands. Say you
|
7
|
-
# wanted to add a subcommand to `list` to show newly deprecated pods,
|
8
|
-
# (e.g. `pod list deprecated`), there are a few things that would need
|
9
|
-
# to change.
|
10
|
-
#
|
11
|
-
# - move this file to `lib/pod/command/list/deprecated.rb` and update
|
12
|
-
# the class to exist in the the Pod::Command::List namespace
|
13
|
-
# - change this class to extend from `List` instead of `Command`. This
|
14
|
-
# tells the plugin system that it is a subcommand of `list`.
|
15
|
-
# - edit `lib/cocoapods_plugins.rb` to require this file
|
16
|
-
#
|
17
|
-
# @todo Create a PR to add your plugin to CocoaPods/cocoapods.org
|
18
|
-
# in the `plugins.json` file, once your plugin is released.
|
19
|
-
#
|
20
|
-
class Podassistant < Command
|
21
|
-
self.summary = 'Short description of cocoapods-bb-PodAssistant.'
|
22
|
-
|
23
|
-
self.description = <<-DESC
|
24
|
-
Longer description of cocoapods-bb-PodAssistant.
|
25
|
-
DESC
|
26
|
-
|
27
|
-
# self.arguments = 'NAME'
|
28
|
-
|
29
|
-
def initialize(argv)
|
30
|
-
# @name = argv.shift_argument
|
31
|
-
super
|
32
|
-
end
|
33
|
-
|
34
|
-
def validate!
|
35
|
-
super
|
36
|
-
# help! 'A Pod name is required.' unless @name
|
37
|
-
end
|
38
|
-
|
39
|
-
def run
|
40
|
-
UI.puts "Add your implementation for the cocoapods-bb-PodAssistant plugin in #{__FILE__}"
|
41
|
-
end
|
42
|
-
end
|
43
|
-
end
|
44
|
-
end
|
@@ -1,168 +0,0 @@
|
|
1
|
-
require 'cocoapods-bb-PodAssistant/config/source_manager'
|
2
|
-
require 'cocoapods-bb-PodAssistant/config/cache_path'
|
3
|
-
require 'cocoapods-bb-PodAssistant/helpers'
|
4
|
-
|
5
|
-
module Pod
|
6
|
-
|
7
|
-
# class StableOptions
|
8
|
-
# # define business specs,defalut is stable_specs
|
9
|
-
# option :business_specs, "stable_specs"
|
10
|
-
|
11
|
-
# # define custom lockSpecs tag
|
12
|
-
# option :tag, ""
|
13
|
-
|
14
|
-
# # define custom lockSpecs branch
|
15
|
-
# option :branch, ""
|
16
|
-
# end
|
17
|
-
|
18
|
-
class Command
|
19
|
-
class Stable < Command
|
20
|
-
require 'fileutils'
|
21
|
-
require 'cocoapods/executable.rb'
|
22
|
-
extend Executable
|
23
|
-
executable :git
|
24
|
-
|
25
|
-
self.summary = '拉取稳定lock配置'
|
26
|
-
self.description = <<-DESC
|
27
|
-
拉取稳定lock配置插件。利用版本比对进行更新配置实现对组件版本控制管理。
|
28
|
-
DESC
|
29
|
-
|
30
|
-
self.arguments = [
|
31
|
-
CLAide::Argument.new('Podfile', false)
|
32
|
-
]
|
33
|
-
def self.options
|
34
|
-
[
|
35
|
-
['--init', '初始化项目yml配置,根据当前项目Podfile.lock生成'],
|
36
|
-
['--sync', '同步远端yml配置,更新项目yml配置'],
|
37
|
-
['--install', '命令同执行`pod install操作`'],
|
38
|
-
['--update', '命令同执行`pod update操作`'],
|
39
|
-
['--update-pod', '命令同执行`pod update <组件>操作`,更新yml配置组件版本信息,多个组件使用`,`或者`空格`隔开,注意⚠️ 使用`空格`需要使用双引号'],
|
40
|
-
].concat(super)
|
41
|
-
end
|
42
|
-
|
43
|
-
def initialize(argv)
|
44
|
-
@names = argv.arguments! unless argv.arguments.empty?
|
45
|
-
@help = argv.flag?('help')
|
46
|
-
@init = argv.flag?('init')
|
47
|
-
@sync = argv.flag?('sync')
|
48
|
-
# install操作
|
49
|
-
@install = argv.flag?('install')
|
50
|
-
@update = argv.flag?('update')
|
51
|
-
# update组件数据支持多个使用`,`或者`空格`隔开
|
52
|
-
update_pods = argv.option('update-pod','')
|
53
|
-
if !update_pods.empty?
|
54
|
-
if update_pods.include?(' ')
|
55
|
-
@update_pods = update_pods.split(' ') unless update_pods.nil?
|
56
|
-
else update_pods.include?(',')
|
57
|
-
@update_pods = update_pods.split(',') unless update_pods.nil?
|
58
|
-
end
|
59
|
-
end
|
60
|
-
super
|
61
|
-
end
|
62
|
-
def validate!
|
63
|
-
super
|
64
|
-
banner! if @help
|
65
|
-
end
|
66
|
-
|
67
|
-
#help load podfile option
|
68
|
-
def stable!(source, options = {})
|
69
|
-
@ll_stable_source = source
|
70
|
-
if options.has_key?(:specs)
|
71
|
-
@businessSpec = options[:specs]
|
72
|
-
puts "当前业务使用源=>#{@businessSpec}"
|
73
|
-
end
|
74
|
-
@ll_stable_tag = options[:tag] if options.has_key?(:tag)
|
75
|
-
@ll_stable_branch = options[:branch] if options.has_key?(:branch)
|
76
|
-
@cache = BB::Cache.new()
|
77
|
-
configGitPath(@cache.cachePath)
|
78
|
-
end
|
79
|
-
|
80
|
-
######################################## Main ########################################
|
81
|
-
|
82
|
-
def run
|
83
|
-
# begin
|
84
|
-
source_manager = BB::SourceManager.new(@businessSpec)
|
85
|
-
if @init
|
86
|
-
puts "[PodAssistant] 开始配置生成当前项目yml文件".yellow
|
87
|
-
# 生成本地yml配置
|
88
|
-
source_manager.generate_localStable
|
89
|
-
puts "[PodAssistant] `pod stable --init` complete!".green
|
90
|
-
elsif @install
|
91
|
-
puts "[PodAssistant] 执行 $ pod install".yellow
|
92
|
-
system "pod install"
|
93
|
-
puts "[PodAssistant] `pod stable --install` complete!".green
|
94
|
-
elsif @update
|
95
|
-
puts "[PodAssistant] 执行 $ pod update".yellow
|
96
|
-
system "pod update"
|
97
|
-
puts "[PodAssistant] `pod stable --update` complete!".green
|
98
|
-
elsif @update_pods
|
99
|
-
# 更新单个组件
|
100
|
-
puts "更新pod组件#{@update_pods} count:#{@update_pods.count}".yellow
|
101
|
-
source_manager.update_podmodules(@update_pods)
|
102
|
-
podnames = @update_pods.join(" ")
|
103
|
-
puts "[PodAssistant] 执行 $ pod update #{podnames}".yellow
|
104
|
-
system "pod update #{podnames}"
|
105
|
-
source_manager.update_local_stable_from_podmodules(@update_pods)
|
106
|
-
podnames = @update_pods.join(",")
|
107
|
-
puts "[PodAssistant] `pod stable --update-pod=#{podnames}` complete!".green
|
108
|
-
elsif @sync
|
109
|
-
puts "开始合并远端lock数据".yellow
|
110
|
-
ll_load_stable
|
111
|
-
#2、clone origin lock spec to cache dir
|
112
|
-
ll_cloneStable
|
113
|
-
#3、fetch newest code
|
114
|
-
ll_fetch_stale_git
|
115
|
-
# 数据合并
|
116
|
-
source_manager.merge_stable_data
|
117
|
-
puts "[PodAssistant] `pod stable` complete! Please execute the [pod install/ pod update] command".green
|
118
|
-
else
|
119
|
-
puts "[PodAssistant] `pod stable` 帮助文档请查看👇".yellow
|
120
|
-
banner!
|
121
|
-
end
|
122
|
-
# rescue => exception
|
123
|
-
# puts "[pod stable] error(已捕获): #{exception}".red
|
124
|
-
# end
|
125
|
-
|
126
|
-
end
|
127
|
-
|
128
|
-
private
|
129
|
-
######################################## API ########################################
|
130
|
-
def ll_load_stable
|
131
|
-
unless File.exist?(File.join(Pathname.pwd, "Podfile"))
|
132
|
-
err_msg = "- Error: #{File.join(Pathname.pwd, "Podfile")} is not exit"
|
133
|
-
Pod::UI.puts "#{err_msg}".send(:red)
|
134
|
-
exit -9001
|
135
|
-
end
|
136
|
-
|
137
|
-
#获取podfile 内容
|
138
|
-
#1、删除所有注释行,避免干扰
|
139
|
-
#2、正则匹配,筛选出stable 方法
|
140
|
-
#3、执行stable 方法,获取配置
|
141
|
-
podfileContent = File.read(File.join(Pathname.pwd, "Podfile"))
|
142
|
-
podfileContent_vaild = podfileContent.lines.reject { |line| line.strip.start_with?("#") }.join
|
143
|
-
stableCommand = podfileContent_vaild.match(/^\s*stable!\s*'([^']+)'(?:,\s*(\w+):\s*'([^']+)')*/m)
|
144
|
-
unless stableCommand
|
145
|
-
err_msg = "- Error: not stable define in the podfile! you can define like【stable! 'https://git.babybus.co/babybus/ios/Specs/stable-specs.git', specs:'global_stable_specs'】in podfile"
|
146
|
-
Pod::UI.puts "#{err_msg}".send(:red)
|
147
|
-
exit -9002
|
148
|
-
end
|
149
|
-
eval(stableCommand.to_s)
|
150
|
-
end
|
151
|
-
def ll_cloneStable
|
152
|
-
cachePath = @cache.cachePath
|
153
|
-
unless Dir.exist?(File.join(cachePath))
|
154
|
-
clonePath = File.dirname(cachePath)
|
155
|
-
FileUtils.mkdir_p clonePath
|
156
|
-
git_clone(@stable_source,clonePath)
|
157
|
-
end
|
158
|
-
end
|
159
|
-
|
160
|
-
def ll_fetch_stale_git
|
161
|
-
git_reset
|
162
|
-
git_fetch
|
163
|
-
git_checkout_and_pull(@stable_source, @stable_branch, @stable_tag)
|
164
|
-
end
|
165
|
-
|
166
|
-
end
|
167
|
-
end
|
168
|
-
end
|
File without changes
|
/data/lib/cocoapods-bb-PodAssistant/{command → babybus}/linkline/targetValidator-linkline.rb
RENAMED
File without changes
|
/data/lib/cocoapods-bb-PodAssistant/{command → babybus}/linkline/targetdefinition-linkline.rb
RENAMED
File without changes
|
File without changes
|
File without changes
|