ocean_package 0.7.0 → 0.9.0
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/.idea/ocean_package.iml +2 -0
- data/Gemfile +1 -0
- data/Gemfile.lock +10 -1
- data/README.md +7 -1
- data/lib/ocean_package.rb +4 -10
- data/lib/ocean_package/command.rb +30 -1
- data/lib/ocean_package/logger.rb +6 -0
- data/lib/ocean_package/package.rb +8 -0
- data/lib/ocean_package/pgy.rb +148 -0
- data/lib/ocean_package/version.rb +1 -1
- data/ocean_package.gemspec +6 -0
- metadata +73 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 1a4bc23aa666b52c1c5721d116d66b4b5d8e45e271546c4a1b40c9f293d86048
|
|
4
|
+
data.tar.gz: bb5a19d0acc1d8c61bf213d39942733ed53d3b3680d124c8c92bfee1a5fa5c38
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: d9322243e7b67e171b0d65f8b4b6ccdb7fb0ee4e3f977eae87941a7749934b1280e64fe222449bde23c1e756f14bace4314ee11775de285992f8079156fb5859
|
|
7
|
+
data.tar.gz: cd19248c665e3b5856870aa583bc6f28fb0b034d5e8b4b6324073923501df3b5d3fcaf4dff318a64c9cbbdcda69179dbe418ea35b10a9069076d52cbb1548665
|
data/.idea/ocean_package.iml
CHANGED
|
@@ -16,11 +16,13 @@
|
|
|
16
16
|
<orderEntry type="library" scope="PROVIDED" name="claide (v1.0.3, ruby-2.6.3-p62) [gem]" level="application" />
|
|
17
17
|
<orderEntry type="library" scope="PROVIDED" name="concurrent-ruby (v1.1.6, ruby-2.6.3-p62) [gem]" level="application" />
|
|
18
18
|
<orderEntry type="library" scope="PROVIDED" name="dingbot (v0.2.3, ruby-2.6.3-p62) [gem]" level="application" />
|
|
19
|
+
<orderEntry type="library" scope="PROVIDED" name="faraday (v1.0.1, ruby-2.6.3-p62) [gem]" level="application" />
|
|
19
20
|
<orderEntry type="library" scope="PROVIDED" name="httparty (v0.18.1, ruby-2.6.3-p62) [gem]" level="application" />
|
|
20
21
|
<orderEntry type="library" scope="PROVIDED" name="mime-types (v3.3.1, ruby-2.6.3-p62) [gem]" level="application" />
|
|
21
22
|
<orderEntry type="library" scope="PROVIDED" name="mime-types-data (v3.2020.0512, ruby-2.6.3-p62) [gem]" level="application" />
|
|
22
23
|
<orderEntry type="library" scope="PROVIDED" name="minitest (v5.11.3, ruby-2.6.3-p62) [gem]" level="application" />
|
|
23
24
|
<orderEntry type="library" scope="PROVIDED" name="multi_xml (v0.6.0, ruby-2.6.3-p62) [gem]" level="application" />
|
|
25
|
+
<orderEntry type="library" scope="PROVIDED" name="multipart-post (v2.1.1, ruby-2.6.3-p62) [gem]" level="application" />
|
|
24
26
|
<orderEntry type="library" scope="PROVIDED" name="rake (v10.5.0, ruby-2.6.3-p62) [gem]" level="application" />
|
|
25
27
|
<orderEntry type="library" scope="PROVIDED" name="semantic_logger (v4.7.1, ruby-2.6.3-p62) [gem]" level="application" />
|
|
26
28
|
</component>
|
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
ocean_package (0.
|
|
4
|
+
ocean_package (0.8.0)
|
|
5
|
+
CFPropertyList
|
|
6
|
+
dingbot
|
|
7
|
+
faraday
|
|
8
|
+
multipart-post
|
|
9
|
+
semantic_logger
|
|
5
10
|
|
|
6
11
|
GEM
|
|
7
12
|
remote: https://rubygems.org/
|
|
@@ -11,6 +16,8 @@ GEM
|
|
|
11
16
|
concurrent-ruby (1.1.6)
|
|
12
17
|
dingbot (0.2.3)
|
|
13
18
|
httparty
|
|
19
|
+
faraday (1.0.1)
|
|
20
|
+
multipart-post (>= 1.2, < 3)
|
|
14
21
|
httparty (0.18.1)
|
|
15
22
|
mime-types (~> 3.0)
|
|
16
23
|
multi_xml (>= 0.5.2)
|
|
@@ -19,6 +26,7 @@ GEM
|
|
|
19
26
|
mime-types-data (3.2020.0512)
|
|
20
27
|
minitest (5.11.3)
|
|
21
28
|
multi_xml (0.6.0)
|
|
29
|
+
multipart-post (2.1.1)
|
|
22
30
|
rake (10.5.0)
|
|
23
31
|
semantic_logger (4.7.1)
|
|
24
32
|
concurrent-ruby (~> 1.0)
|
|
@@ -31,6 +39,7 @@ DEPENDENCIES
|
|
|
31
39
|
bundler (~> 1.17.2)
|
|
32
40
|
claide (~> 1.0, >= 1.0.3)
|
|
33
41
|
dingbot
|
|
42
|
+
faraday
|
|
34
43
|
minitest (~> 5.0)
|
|
35
44
|
ocean_package!
|
|
36
45
|
rake (~> 10.0)
|
data/README.md
CHANGED
|
@@ -30,11 +30,16 @@ or
|
|
|
30
30
|
- `ossutil`, [链接](https://help.aliyun.com/document_detail/120075.html?spm=a2c4g.11186623.2.45.6e491c7akyZ5HE)
|
|
31
31
|
|
|
32
32
|
|
|
33
|
+
```
|
|
34
|
+
sudo gem install dingbot
|
|
35
|
+
sudo gem install semantic_logger
|
|
36
|
+
```
|
|
37
|
+
|
|
33
38
|
|
|
34
39
|
## Usage
|
|
35
40
|
|
|
36
41
|
```
|
|
37
|
-
oceanpackage --workspace-path=/Users/ocean/Desktop/code/iOS/MyApp.xcworkspace --scheme=MyApp --configuration=Debug --archive-path=/Users/ocean/Documents/myipas --export-options-plist=/Users/ocean/Desktop/code/iOS/Company/MyApp/AdHocExportOptions.plist --company-name=MyCompany --fir-token=fir平台的token --change-log=测试一下 --oss-bucket-name=bucket名称 --oss-bucket-path=bucket路径 --oss-endpoint=oss的endpoint --ding-token=钉钉群机器人token --at-mobiles=需要@的人手机号
|
|
42
|
+
oceanpackage --workspace-path=/Users/ocean/Desktop/code/iOS/MyApp.xcworkspace --scheme=MyApp --configuration=Debug --archive-path=/Users/ocean/Documents/myipas --export-options-plist=/Users/ocean/Desktop/code/iOS/Company/MyApp/AdHocExportOptions.plist --company-name=MyCompany --fir-token=fir平台的token --pgy-api-key=蒲公英平台的apikey --change-log=测试一下 --oss-bucket-name=bucket名称 --oss-bucket-path=bucket路径 --oss-endpoint=oss的endpoint --ding-token=钉钉群机器人token --at-mobiles=需要@的人手机号
|
|
38
43
|
```
|
|
39
44
|
|
|
40
45
|
- `--workspace-path`: `.xcworkspace` 文件路径
|
|
@@ -44,6 +49,7 @@ oceanpackage --workspace-path=/Users/ocean/Desktop/code/iOS/MyApp.xcworkspace --
|
|
|
44
49
|
- `--export-options-plist`: 打包用到的 `export-options` plist 文件路径
|
|
45
50
|
- `--company-name`: 公司名称,可以不填
|
|
46
51
|
- `--fir-token`: fir 平台的 token
|
|
52
|
+
- `--pgy-api-key`: 蒲公英平台的 api key
|
|
47
53
|
- `--change-log`: 更新描述
|
|
48
54
|
- `--oss-bucket-name`: `oss bucket` 名称
|
|
49
55
|
- `--oss-bucket-path`: `oss bucket` 路径
|
data/lib/ocean_package.rb
CHANGED
|
@@ -2,6 +2,9 @@ require 'fileutils'
|
|
|
2
2
|
require 'dingbot'
|
|
3
3
|
require 'cfpropertylist'
|
|
4
4
|
require 'semantic_logger'
|
|
5
|
+
require 'multipart_post'
|
|
6
|
+
require 'net/http/post/multipart'
|
|
7
|
+
require 'json'
|
|
5
8
|
|
|
6
9
|
# 注意:这里使用 require_relative 来引用文件
|
|
7
10
|
require_relative 'ocean_package/version'
|
|
@@ -14,6 +17,7 @@ require_relative 'ocean_package/dingtalk'
|
|
|
14
17
|
require_relative 'ocean_package/ipa'
|
|
15
18
|
require_relative 'ocean_package/logger'
|
|
16
19
|
require_relative 'ocean_package/package'
|
|
20
|
+
require_relative 'ocean_package/pgy'
|
|
17
21
|
|
|
18
22
|
module OceanPackage
|
|
19
23
|
require 'claide'
|
|
@@ -26,16 +30,6 @@ module OceanPackage
|
|
|
26
30
|
command = OceanPackage::Command.new(argvs)
|
|
27
31
|
command.run
|
|
28
32
|
|
|
29
|
-
|
|
30
|
-
# # command = OceanPackage::Command.new(config)
|
|
31
|
-
#
|
|
32
|
-
# argv = CLAide::ARGV.new(ARGV)
|
|
33
|
-
# if !argv.arguments.include?("oceanpackage")
|
|
34
|
-
# puts "不包含命令 oceanpackage"
|
|
35
|
-
# exit 1
|
|
36
|
-
# end
|
|
37
|
-
#
|
|
38
|
-
# puts "包含命令 oceanpackage"
|
|
39
33
|
end
|
|
40
34
|
|
|
41
35
|
end
|
|
@@ -6,6 +6,8 @@ module OceanPackage
|
|
|
6
6
|
attr_accessor :package
|
|
7
7
|
# fir 平台
|
|
8
8
|
attr_accessor :fir
|
|
9
|
+
# 蒲公英平台
|
|
10
|
+
attr_accessor :pgy
|
|
9
11
|
# oss 对象
|
|
10
12
|
attr_accessor :oss
|
|
11
13
|
# ding ding
|
|
@@ -56,6 +58,11 @@ module OceanPackage
|
|
|
56
58
|
fir_log_path = @package.final_archive_path + 'fir.log'
|
|
57
59
|
@fir = OceanPackage::Fir.new(fir_token, final_change_log, @package.ipa_file_path, fir_log_path)
|
|
58
60
|
|
|
61
|
+
##### 蒲公英 #####
|
|
62
|
+
pgy_api_key = argv.option("pgy-api-key", "")
|
|
63
|
+
@pgy = OceanPackage::Pgy.new(pgy_api_key, final_change_log, @package.ipa_file_path)
|
|
64
|
+
Log.info("pgy_api_key: #{pgy_api_key}")
|
|
65
|
+
|
|
59
66
|
##### oss #####
|
|
60
67
|
oss_bucket_name = argv.option("oss-bucket-name", "")
|
|
61
68
|
Log.info("oss_bucket_name: #{oss_bucket_name}")
|
|
@@ -96,9 +103,22 @@ module OceanPackage
|
|
|
96
103
|
|
|
97
104
|
# 上传 ipa 文件
|
|
98
105
|
def upload
|
|
99
|
-
|
|
106
|
+
can_fir = fir.check
|
|
107
|
+
can_pgy = pgy.check
|
|
108
|
+
if can_fir
|
|
109
|
+
Log.info("publish platform: fir")
|
|
110
|
+
upload_to_fir
|
|
111
|
+
elsif can_pgy
|
|
112
|
+
Log.info("publish platform: pgy")
|
|
113
|
+
upload_to_pgy
|
|
114
|
+
else
|
|
115
|
+
Log.info("publish platform: none, exit")
|
|
116
|
+
exit(1)
|
|
117
|
+
end
|
|
100
118
|
end
|
|
101
119
|
|
|
120
|
+
# ------ fir 平台 -------
|
|
121
|
+
|
|
102
122
|
# 上传到 fir 平台
|
|
103
123
|
def upload_to_fir
|
|
104
124
|
fir.run
|
|
@@ -112,6 +132,13 @@ module OceanPackage
|
|
|
112
132
|
@qr_code_url = oss.upload(path, name)
|
|
113
133
|
end
|
|
114
134
|
|
|
135
|
+
# ------ pgy 平台 -------
|
|
136
|
+
def upload_to_pgy
|
|
137
|
+
pgy.run
|
|
138
|
+
@qr_code_url = pgy.get_qr_code_url
|
|
139
|
+
@ipa_download_link = pgy.get_download_url
|
|
140
|
+
end
|
|
141
|
+
|
|
115
142
|
# 总共时间,单位 秒 s
|
|
116
143
|
def compute_total_time
|
|
117
144
|
time1 = package.start_time
|
|
@@ -145,7 +172,9 @@ module OceanPackage
|
|
|
145
172
|
content += "下载链接: [点我](#{@ipa_download_link})" + "\n\n"
|
|
146
173
|
content += ""
|
|
147
174
|
|
|
175
|
+
Log.divider
|
|
148
176
|
Log.info("web hook message: \n#{content}")
|
|
177
|
+
Log.divider
|
|
149
178
|
|
|
150
179
|
content
|
|
151
180
|
end
|
data/lib/ocean_package/logger.rb
CHANGED
|
@@ -60,6 +60,7 @@ module OceanPackage
|
|
|
60
60
|
@end_time = Time.now
|
|
61
61
|
# 返回打包成功的 ipa 文件路径
|
|
62
62
|
ipa_file_path
|
|
63
|
+
open_ipa_file_path
|
|
63
64
|
end
|
|
64
65
|
|
|
65
66
|
# 一些校验
|
|
@@ -239,6 +240,13 @@ module OceanPackage
|
|
|
239
240
|
# 也可以在该目录下查找 ipa 后缀的文件
|
|
240
241
|
end
|
|
241
242
|
|
|
243
|
+
# 打开所在目录
|
|
244
|
+
def open_ipa_file_path
|
|
245
|
+
path = final_archive_path
|
|
246
|
+
open_cmd = "open #{path}"
|
|
247
|
+
system(open_cmd)
|
|
248
|
+
end
|
|
249
|
+
|
|
242
250
|
end
|
|
243
251
|
|
|
244
252
|
end
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
|
|
2
|
+
module OceanPackage
|
|
3
|
+
class Pgy
|
|
4
|
+
require 'multipart_post'
|
|
5
|
+
require 'net/http/post/multipart'
|
|
6
|
+
require 'json'
|
|
7
|
+
|
|
8
|
+
# # 用户Key,用来标识当前用户的身份
|
|
9
|
+
# attr_accessor :user_key
|
|
10
|
+
# API Key,用来识别API调用者的身份,如不特别说明,每个接口中都需要含有此参数。
|
|
11
|
+
attr_accessor :api_key
|
|
12
|
+
# # 表示一个App组的唯一Key。
|
|
13
|
+
# attr_accessor :app_key
|
|
14
|
+
# 更新日志
|
|
15
|
+
attr_accessor :change_log
|
|
16
|
+
# ipa文件包路径
|
|
17
|
+
attr_accessor :ipa_file_path
|
|
18
|
+
|
|
19
|
+
# 短链接
|
|
20
|
+
attr_accessor :short_url
|
|
21
|
+
# 二维码链接
|
|
22
|
+
attr_accessor :qr_code_url
|
|
23
|
+
|
|
24
|
+
# 初始化
|
|
25
|
+
def initialize(api_key, change_log, ipa_file_path)
|
|
26
|
+
@api_key = api_key
|
|
27
|
+
@change_log = change_log
|
|
28
|
+
@ipa_file_path = ipa_file_path
|
|
29
|
+
@short_url = ""
|
|
30
|
+
@qr_code_url = ""
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
# 校验
|
|
34
|
+
def check
|
|
35
|
+
|
|
36
|
+
# user_key_value = "#{@user_key}"
|
|
37
|
+
# if user_key_value.empty?
|
|
38
|
+
# Log.error("pgy user key is empty, please check !!!")
|
|
39
|
+
# return false
|
|
40
|
+
# end
|
|
41
|
+
|
|
42
|
+
api_key_value = "#{@api_key}"
|
|
43
|
+
if api_key_value.empty?
|
|
44
|
+
Log.error("pgy api key is empty, please check !!!")
|
|
45
|
+
return false
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
# app_key_value = "#{@app_key}"
|
|
49
|
+
# if app_key_value.empty?
|
|
50
|
+
# Log.error("pgy app key is empty, please check !!!")
|
|
51
|
+
# return false
|
|
52
|
+
# end
|
|
53
|
+
|
|
54
|
+
ipa_file_path_value = "#{@ipa_file_path}"
|
|
55
|
+
if ipa_file_path_value.empty?
|
|
56
|
+
Log.error("ipa file path is empty, please check !!!")
|
|
57
|
+
return false
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
return true
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
# 运行
|
|
64
|
+
def run
|
|
65
|
+
unless check
|
|
66
|
+
return
|
|
67
|
+
end
|
|
68
|
+
publish
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
# 上传
|
|
72
|
+
def publish
|
|
73
|
+
url = URI.parse('https://www.pgyer.com/apiv2/app/upload')
|
|
74
|
+
File.open("#{@ipa_file_path}") do |ipa|
|
|
75
|
+
|
|
76
|
+
# 构建必要的参数
|
|
77
|
+
ipa_file_name = Time.new.strftime("%Y-%m-%d_%H-%M-%S") + ".ipa"
|
|
78
|
+
require_params = {
|
|
79
|
+
"file" => UploadIO.new(ipa, "multipart/form-data", ipa_file_name),
|
|
80
|
+
"_api_key" => "#{@api_key}",
|
|
81
|
+
"buildUpdateDescription" => "#{@change_log}",
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
# 构造请求
|
|
85
|
+
req = Net::HTTP::Post::Multipart.new(url.path, require_params)
|
|
86
|
+
|
|
87
|
+
# 网络http
|
|
88
|
+
net = Net::HTTP.new(url.host, url.port)
|
|
89
|
+
# 这里需要设置,否则会有 EPIPE: Broken pipe 错误
|
|
90
|
+
net.use_ssl = true
|
|
91
|
+
net.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
|
92
|
+
net.set_debug_output($stdout)
|
|
93
|
+
|
|
94
|
+
# 发起请求
|
|
95
|
+
res = net.start do |http|
|
|
96
|
+
http.use_ssl = true
|
|
97
|
+
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
|
98
|
+
http.request(req)
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
Log.divider
|
|
102
|
+
Log.info(res)
|
|
103
|
+
|
|
104
|
+
# 具体参考 https://www.pgyer.com/doc/view/api#paramInfo
|
|
105
|
+
case res
|
|
106
|
+
when Net::HTTPSuccess
|
|
107
|
+
# 响应是字符串类型,需要转为json进行处理
|
|
108
|
+
json_value = JSON.parse(res.body)
|
|
109
|
+
Log.divider
|
|
110
|
+
Log.info(json_value)
|
|
111
|
+
# 成功
|
|
112
|
+
data = json_value["data"]
|
|
113
|
+
short_url = data["buildShortcutUrl"]
|
|
114
|
+
qr_code_url = data["buildQRCodeURL"]
|
|
115
|
+
@short_url = short_url
|
|
116
|
+
@qr_code_url = qr_code_url
|
|
117
|
+
Log.error(@short_url)
|
|
118
|
+
Log.error(@qr_code_url)
|
|
119
|
+
else
|
|
120
|
+
# 失败
|
|
121
|
+
Log.error("pgy publish fail, please check !!!")
|
|
122
|
+
exit(1)
|
|
123
|
+
end
|
|
124
|
+
end
|
|
125
|
+
end
|
|
126
|
+
|
|
127
|
+
# 获取下载链接
|
|
128
|
+
def get_download_url
|
|
129
|
+
# 需要有固定的前缀
|
|
130
|
+
url = "https://www.pgyer.com/" + @short_url
|
|
131
|
+
|
|
132
|
+
Log.divider
|
|
133
|
+
Log.info(url)
|
|
134
|
+
|
|
135
|
+
url
|
|
136
|
+
end
|
|
137
|
+
|
|
138
|
+
# 获取二维码链接
|
|
139
|
+
def get_qr_code_url
|
|
140
|
+
url = "#{@qr_code_url}"
|
|
141
|
+
|
|
142
|
+
Log.divider
|
|
143
|
+
Log.info(url)
|
|
144
|
+
|
|
145
|
+
url
|
|
146
|
+
end
|
|
147
|
+
end
|
|
148
|
+
end
|
data/ocean_package.gemspec
CHANGED
|
@@ -37,6 +37,12 @@ Gem::Specification.new do |spec|
|
|
|
37
37
|
spec.executables << 'oceanpackage'
|
|
38
38
|
spec.require_paths = ["lib"]
|
|
39
39
|
|
|
40
|
+
spec.add_dependency 'dingbot'
|
|
41
|
+
spec.add_dependency 'CFPropertyList'
|
|
42
|
+
spec.add_dependency 'semantic_logger'
|
|
43
|
+
spec.add_dependency 'faraday'
|
|
44
|
+
spec.add_dependency 'multipart-post'
|
|
45
|
+
|
|
40
46
|
spec.add_development_dependency "bundler", "~> 1.17.2"
|
|
41
47
|
spec.add_development_dependency "rake", "~> 10.0"
|
|
42
48
|
spec.add_development_dependency "minitest", "~> 5.0"
|
metadata
CHANGED
|
@@ -1,15 +1,85 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: ocean_package
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.9.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- ocean
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2020-08-
|
|
11
|
+
date: 2020-08-31 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
|
+
- !ruby/object:Gem::Dependency
|
|
14
|
+
name: dingbot
|
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
|
16
|
+
requirements:
|
|
17
|
+
- - ">="
|
|
18
|
+
- !ruby/object:Gem::Version
|
|
19
|
+
version: '0'
|
|
20
|
+
type: :runtime
|
|
21
|
+
prerelease: false
|
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
23
|
+
requirements:
|
|
24
|
+
- - ">="
|
|
25
|
+
- !ruby/object:Gem::Version
|
|
26
|
+
version: '0'
|
|
27
|
+
- !ruby/object:Gem::Dependency
|
|
28
|
+
name: CFPropertyList
|
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
|
30
|
+
requirements:
|
|
31
|
+
- - ">="
|
|
32
|
+
- !ruby/object:Gem::Version
|
|
33
|
+
version: '0'
|
|
34
|
+
type: :runtime
|
|
35
|
+
prerelease: false
|
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
37
|
+
requirements:
|
|
38
|
+
- - ">="
|
|
39
|
+
- !ruby/object:Gem::Version
|
|
40
|
+
version: '0'
|
|
41
|
+
- !ruby/object:Gem::Dependency
|
|
42
|
+
name: semantic_logger
|
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
|
44
|
+
requirements:
|
|
45
|
+
- - ">="
|
|
46
|
+
- !ruby/object:Gem::Version
|
|
47
|
+
version: '0'
|
|
48
|
+
type: :runtime
|
|
49
|
+
prerelease: false
|
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
51
|
+
requirements:
|
|
52
|
+
- - ">="
|
|
53
|
+
- !ruby/object:Gem::Version
|
|
54
|
+
version: '0'
|
|
55
|
+
- !ruby/object:Gem::Dependency
|
|
56
|
+
name: faraday
|
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
|
58
|
+
requirements:
|
|
59
|
+
- - ">="
|
|
60
|
+
- !ruby/object:Gem::Version
|
|
61
|
+
version: '0'
|
|
62
|
+
type: :runtime
|
|
63
|
+
prerelease: false
|
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
+
requirements:
|
|
66
|
+
- - ">="
|
|
67
|
+
- !ruby/object:Gem::Version
|
|
68
|
+
version: '0'
|
|
69
|
+
- !ruby/object:Gem::Dependency
|
|
70
|
+
name: multipart-post
|
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
|
72
|
+
requirements:
|
|
73
|
+
- - ">="
|
|
74
|
+
- !ruby/object:Gem::Version
|
|
75
|
+
version: '0'
|
|
76
|
+
type: :runtime
|
|
77
|
+
prerelease: false
|
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
79
|
+
requirements:
|
|
80
|
+
- - ">="
|
|
81
|
+
- !ruby/object:Gem::Version
|
|
82
|
+
version: '0'
|
|
13
83
|
- !ruby/object:Gem::Dependency
|
|
14
84
|
name: bundler
|
|
15
85
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -89,6 +159,7 @@ files:
|
|
|
89
159
|
- lib/ocean_package/logger.rb
|
|
90
160
|
- lib/ocean_package/oss.rb
|
|
91
161
|
- lib/ocean_package/package.rb
|
|
162
|
+
- lib/ocean_package/pgy.rb
|
|
92
163
|
- lib/ocean_package/version.rb
|
|
93
164
|
- ocean_package.gemspec
|
|
94
165
|
homepage: https://github.com/oceanfive/ocean_package
|