cocoapods-meitu-bin 1.1.2 → 1.1.4
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 73b976c903602c05d082f8e8cc8c0c886e831b786aebc4a7a32696caeba4fe6d
|
4
|
+
data.tar.gz: 6f2d1a869d95fa1a99a1ccc2a8bae5d6bcc24c67b92d0baf0d22c9d9b9feb291
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2e2b1fe99071023e22bcefe5364b62b00f0baa495091a4e4663bd2b0caea510cdc8de77a29b66afc8111deeb915ca3e0f42aece646451a1ad04f66146656edbd
|
7
|
+
data.tar.gz: 44611af9f2e3fcbe147012cb55999ac48696e05c5dfde4bce29ce9f2280e19d02aaf26cc63e6d04c43d2f20359e0f12248f5de94bd431791dc9b005c04675bca
|
@@ -155,7 +155,7 @@ class PodUpdateConfig
|
|
155
155
|
@@pods << value
|
156
156
|
end
|
157
157
|
def self.set_lockfile(path)
|
158
|
-
@@lockfile =
|
158
|
+
@@lockfile = Pod::Lockfile.from_file(path) if path
|
159
159
|
end
|
160
160
|
def self.lockfile()
|
161
161
|
@@lockfile
|
@@ -164,4 +164,8 @@ class PodUpdateConfig
|
|
164
164
|
def self.pods
|
165
165
|
@@pods
|
166
166
|
end
|
167
|
+
def self.clear
|
168
|
+
@@pods = []
|
169
|
+
@@lockfile = nil
|
170
|
+
end
|
167
171
|
end
|
@@ -25,25 +25,41 @@ def get_podfile_lock
|
|
25
25
|
#获取 PODFILE CHECKSUM 用来判断服务端是否存在该podfile.lock
|
26
26
|
checksum = Pod::Config.instance.podfile.checksum
|
27
27
|
puts checksum
|
28
|
+
# lock = Pod::Config.instance.lockfile
|
29
|
+
# list = lock.internal_data['SPEC REPOS']['https://github.com/CocoaPods/Specs.git']
|
30
|
+
# #遍历 list
|
31
|
+
# name_list = []
|
32
|
+
# list.each do |item|
|
33
|
+
# name_list << item
|
34
|
+
# # `echo #{item} >> /Users/sunxianglong/Desktop/work/data.txt`
|
35
|
+
# end
|
28
36
|
# zip下载地址
|
29
37
|
curl = "https://xiuxiu-dl-meitu-com.obs.cn-north-4.myhuaweicloud.com/ios/binary/MTXX/#{checksum}/podfile.lock.zip"
|
30
38
|
# 判断zip文件是否存在 存在下载并解压
|
31
|
-
if system("curl -o /dev/null -s -w %{http_code} #{curl} | grep 200")
|
39
|
+
if system("curl -o /dev/null -s -w %{http_code} #{curl} | grep 200 > /dev/null 2>&1")
|
32
40
|
puts "获取服务端存储的podfile.lcok文件".green
|
33
41
|
#下载并解压的podfile.zip文件
|
34
|
-
if system("curl -O #{curl}") && system("unzip -o podfile.lock.zip")
|
42
|
+
if system("curl -O #{curl} > /dev/null 2>&1") && system("unzip -o podfile.lock.zip > /dev/null 2>&1")
|
35
43
|
Pod::UI.puts "下载并解压podfile.lcok文件成功".green
|
36
44
|
`rm -rf podfile.lock.zip`
|
37
45
|
# 设置获取到的podfile.lock对象
|
38
|
-
PodUpdateConfig.set_lockfile(
|
46
|
+
PodUpdateConfig.set_lockfile(Pod::Config.instance.installation_root + 'Podfile.lock')
|
39
47
|
#获取analyzer
|
48
|
+
Pod::UI.puts "提前根据checksum命中podfile.lcok进行依赖分析".green
|
40
49
|
analyzer = Pod::Installer::Analyzer.new(
|
41
50
|
Pod::Config.instance.sandbox,
|
42
51
|
Pod::Config.instance.podfile,
|
43
52
|
PodUpdateConfig.lockfile
|
44
53
|
)
|
54
|
+
analyzer.update_repositories
|
45
55
|
analyzer.analyze(true)
|
46
56
|
|
57
|
+
# analyzer.instance_variable_get("@result").pod_targets.each do |pod_target|
|
58
|
+
# if name_list.include?(pod_target.name)
|
59
|
+
# # "#{SPEC_NAME}/#{VERSION}/#{SPEC_NAME}.podspec"
|
60
|
+
# end
|
61
|
+
# end
|
62
|
+
|
47
63
|
#获取analyzer中所有git 且branch 指向的pod
|
48
64
|
Pod::Config.instance.podfile.dependencies.map do |dependency|
|
49
65
|
if dependency.external_source && dependency.external_source[:git] && (dependency.external_source[:branch] || (dependency.external_source.size == 1))
|
@@ -58,23 +74,26 @@ def get_podfile_lock
|
|
58
74
|
end
|
59
75
|
end
|
60
76
|
rescue => error
|
61
|
-
puts error
|
62
|
-
|
77
|
+
puts "podfile.lcok相关处理发生异常,报错原因:#{error}"
|
78
|
+
PodUpdateConfig.clear
|
63
79
|
`rm -rf podfile.lock.zip`
|
64
80
|
`rm -rf podfile.lock`
|
65
81
|
end
|
66
82
|
end
|
67
83
|
|
84
|
+
|
68
85
|
# 上传podfile.lock文件到服务端
|
69
|
-
def upload_podfile_lock
|
86
|
+
def upload_podfile_lock(checksum,upload = false)
|
70
87
|
begin
|
71
|
-
checksum = Pod::Config.instance.podfile.checksum
|
72
88
|
curl = "https://xiuxiu-dl-meitu-com.obs.cn-north-4.myhuaweicloud.com/ios/binary/MTXX/#{checksum}/podfile.lock.zip"
|
73
89
|
# 服务端不存在该podfiel.lock文件才上传,避免频繁上报同一个文件
|
74
|
-
if !system("curl -o /dev/null -s -w %{http_code} #{curl} | grep 200")
|
90
|
+
if upload || !system("curl -o /dev/null -s -w %{http_code} #{curl} | grep 200 > /dev/null 2>&1")
|
75
91
|
Pod::UI.puts "上报podfile.lcok文件到服务端".green
|
76
|
-
puts checksum
|
77
|
-
if
|
92
|
+
puts Pod::Config.instance.podfile.checksum
|
93
|
+
if upload
|
94
|
+
puts "mbox podfile.checksum = #{checksum}"
|
95
|
+
end
|
96
|
+
if system("zip podfile.lock.zip Podfile.lock > /dev/null 2>&1") && system("curl -F \"name=MTXX\" -F \"version=#{checksum}\" -F \"file=@#{Pathname.pwd}/podfile.lock.zip\" http://nezha.community.cloud.meitu.com/file/upload.json > /dev/null 2>&1")
|
78
97
|
Pod::UI.puts "上报podfile.lcok文件到服务端成功".green
|
79
98
|
`rm -rf podfile.lock.zip`
|
80
99
|
else
|
@@ -82,13 +101,22 @@ def upload_podfile_lock
|
|
82
101
|
`rm -rf podfile.lock.zip`
|
83
102
|
end
|
84
103
|
end
|
85
|
-
|
86
104
|
rescue => error
|
87
|
-
puts "上传podfile.lcok
|
105
|
+
puts "上传podfile.lcok文件失败,失败原因:#{error}"
|
88
106
|
`rm -rf podfile.zip`
|
89
107
|
end
|
90
108
|
end
|
91
|
-
|
109
|
+
def upload_mbox_podfile_lock
|
110
|
+
begin
|
111
|
+
podfile_path = Pod::Config.instance.installation_root + 'mtxx/MTXX' + 'Podfile'
|
112
|
+
podfile = Pod::Podfile.from_file(podfile_path) if podfile_path
|
113
|
+
if podfile
|
114
|
+
upload_podfile_lock(podfile.checksum,true )
|
115
|
+
end
|
116
|
+
rescue => error
|
117
|
+
puts "mbox podfile.lcok文件兼容处理失败,失败原因:#{error}"
|
118
|
+
end
|
119
|
+
end
|
92
120
|
Pod::HooksManager.register('cocoapods-meitu-bin', :pre_install) do |_context|
|
93
121
|
require 'cocoapods-meitu-bin/native'
|
94
122
|
require 'cocoapods-meitu-bin/helpers/buildAll/bin_helper'
|
@@ -98,16 +126,11 @@ Pod::HooksManager.register('cocoapods-meitu-bin', :pre_install) do |_context|
|
|
98
126
|
# puts Pod::Config.instance
|
99
127
|
# installer = Installer.new(config.sandbox, config.podfile, config.lockfile)
|
100
128
|
# puts checksum
|
101
|
-
get_podfile_lock
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
129
|
# pod bin repo update 更新二进制私有源
|
109
130
|
Pod::Command::Bin::Repo::Update.new(CLAide::ARGV.new($ARGV)).run
|
110
131
|
|
132
|
+
get_podfile_lock
|
133
|
+
|
111
134
|
# 有插件/本地库 且是dev环境下,默认进入源码白名单 过滤 archive命令
|
112
135
|
if _context.podfile.plugins.keys.include?('cocoapods-meitu-bin') && _context.podfile.configuration_env == 'dev'
|
113
136
|
dependencies = _context.podfile.dependencies
|
@@ -142,8 +165,11 @@ end
|
|
142
165
|
# 注册 pod install 钩子
|
143
166
|
Pod::HooksManager.register('cocoapods-meitu-bin', :post_install) do |context|
|
144
167
|
# p "hello world! post_install"
|
145
|
-
upload_podfile_lock
|
146
|
-
|
168
|
+
upload_podfile_lock(Pod::Config.instance.podfile.checksum)
|
169
|
+
#判断是否在 mbox 工作目录执行pod install
|
170
|
+
if system("mbox status > /dev/null 2>&1")
|
171
|
+
upload_mbox_podfile_lock
|
172
|
+
end
|
147
173
|
end
|
148
174
|
|
149
175
|
Pod::HooksManager.register('cocoapods-meitu-bin', :source_provider) do |context, _|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cocoapods-meitu-bin
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jensen
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-07-
|
11
|
+
date: 2023-07-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: parallel
|