yk_command 0.4.9 → 0.5.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/sonarlint/issuestore/index.pb +0 -0
- data/.idea/yk_command.iml +7 -6
- data/Gemfile.lock +4 -1
- data/lib/yk_command/analyze/analyze.rb +10 -1
- data/lib/yk_command/analyze/request.rb +1 -0
- data/lib/yk_command/bot/wx_bot.rb +75 -0
- data/lib/yk_command/version.rb +1 -1
- data/yk_command.gemspec +1 -0
- metadata +18 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 0270360ed964ef12d21ff5a0d2687a78243877286d62e503fc3d9ac4b5378440
|
|
4
|
+
data.tar.gz: e34b5d101303ed14d2e1094ba4c2f3ecb49874b38fcd02334738659578bc3f52
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 94df888ee6a59310135cc4f7a04e7c68c42daf597ba3c2ef52bd1ea4e7fea81d1d5e5aed1bae7f627991e57b401ae76ca25a507998858adf3f53c0fc44e77fd0
|
|
7
|
+
data.tar.gz: 3a5f3a628a8c726affc50d657b72da0a6b7f46b6b8826349493f0a5f90f822641071814723f8479d48cf2e58ace4d93be5ac376901371f83bee9dc6df997d044
|
|
File without changes
|
data/.idea/yk_command.iml
CHANGED
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
<orderEntry type="library" scope="PROVIDED" name="httparty (v0.20.0, RVM: ruby-2.7.2 [tom]) [gem]" level="application" />
|
|
42
42
|
<orderEntry type="library" scope="PROVIDED" name="httpclient (v2.8.3, RVM: ruby-2.7.2 [tom]) [gem]" level="application" />
|
|
43
43
|
<orderEntry type="library" scope="PROVIDED" name="i18n (v1.10.0, RVM: ruby-2.7.2 [tom]) [gem]" level="application" />
|
|
44
|
-
<orderEntry type="library" scope="PROVIDED" name="json (v2.6.
|
|
44
|
+
<orderEntry type="library" scope="PROVIDED" name="json (v2.6.2, RVM: ruby-2.7.2 [tom]) [gem]" level="application" />
|
|
45
45
|
<orderEntry type="library" scope="PROVIDED" name="mime-types (v3.4.1, RVM: ruby-2.7.2 [tom]) [gem]" level="application" />
|
|
46
46
|
<orderEntry type="library" scope="PROVIDED" name="mime-types-data (v3.2022.0105, RVM: ruby-2.7.2 [tom]) [gem]" level="application" />
|
|
47
47
|
<orderEntry type="library" scope="PROVIDED" name="minitest (v5.15.0, RVM: ruby-2.7.2 [tom]) [gem]" level="application" />
|
|
@@ -72,6 +72,7 @@
|
|
|
72
72
|
<orderEntry type="library" scope="PROVIDED" name="typhoeus (v1.4.0, RVM: ruby-2.7.2 [tom]) [gem]" level="application" />
|
|
73
73
|
<orderEntry type="library" scope="PROVIDED" name="tzinfo (v2.0.4, RVM: ruby-2.7.2 [tom]) [gem]" level="application" />
|
|
74
74
|
<orderEntry type="library" scope="PROVIDED" name="unicode-display_width (v2.1.0, RVM: ruby-2.7.2 [tom]) [gem]" level="application" />
|
|
75
|
+
<orderEntry type="library" scope="PROVIDED" name="wechat_work_webhook (v0.1.0, RVM: ruby-2.7.2 [tom]) [gem]" level="application" />
|
|
75
76
|
<orderEntry type="library" scope="PROVIDED" name="xcodeproj (v1.21.0, RVM: ruby-2.7.2 [tom]) [gem]" level="application" />
|
|
76
77
|
<orderEntry type="library" scope="PROVIDED" name="zeitwerk (v2.5.4, RVM: ruby-2.7.2 [tom]) [gem]" level="application" />
|
|
77
78
|
</component>
|
|
@@ -79,21 +80,21 @@
|
|
|
79
80
|
<option name="myRootTask">
|
|
80
81
|
<RakeTaskImpl id="rake">
|
|
81
82
|
<subtasks>
|
|
82
|
-
<RakeTaskImpl description="Build yk_command-0.4.
|
|
83
|
+
<RakeTaskImpl description="Build yk_command-0.4.9.gem into the pkg directory" fullCommand="build" id="build" />
|
|
83
84
|
<RakeTaskImpl id="build">
|
|
84
85
|
<subtasks>
|
|
85
|
-
<RakeTaskImpl description="Generate SHA512 checksum if yk_command-0.4.
|
|
86
|
+
<RakeTaskImpl description="Generate SHA512 checksum if yk_command-0.4.9.gem into the checksums directory" fullCommand="build:checksum" id="checksum" />
|
|
86
87
|
</subtasks>
|
|
87
88
|
</RakeTaskImpl>
|
|
88
89
|
<RakeTaskImpl description="Remove any temporary products" fullCommand="clean" id="clean" />
|
|
89
90
|
<RakeTaskImpl description="Remove any generated files" fullCommand="clobber" id="clobber" />
|
|
90
|
-
<RakeTaskImpl description="Build and install yk_command-0.4.
|
|
91
|
+
<RakeTaskImpl description="Build and install yk_command-0.4.9.gem into system gems" fullCommand="install" id="install" />
|
|
91
92
|
<RakeTaskImpl id="install">
|
|
92
93
|
<subtasks>
|
|
93
|
-
<RakeTaskImpl description="Build and install yk_command-0.4.
|
|
94
|
+
<RakeTaskImpl description="Build and install yk_command-0.4.9.gem into system gems without network access" fullCommand="install:local" id="local" />
|
|
94
95
|
</subtasks>
|
|
95
96
|
</RakeTaskImpl>
|
|
96
|
-
<RakeTaskImpl description="Create tag v0.4.
|
|
97
|
+
<RakeTaskImpl description="Create tag v0.4.9 and build and push yk_command-0.4.9.gem to rubygems.org" fullCommand="release[remote]" id="release[remote]" />
|
|
97
98
|
<RakeTaskImpl description="" fullCommand="default" id="default" />
|
|
98
99
|
<RakeTaskImpl description="" fullCommand="release" id="release" />
|
|
99
100
|
<RakeTaskImpl id="release">
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
yk_command (0.
|
|
4
|
+
yk_command (0.5.0)
|
|
5
5
|
bundler
|
|
6
6
|
cocoapods
|
|
7
7
|
cocoapods-core
|
|
@@ -11,6 +11,7 @@ PATH
|
|
|
11
11
|
httparty
|
|
12
12
|
pathname (= 0.1.0)
|
|
13
13
|
thor
|
|
14
|
+
wechat_work_webhook
|
|
14
15
|
xcodeproj
|
|
15
16
|
|
|
16
17
|
GEM
|
|
@@ -140,6 +141,8 @@ GEM
|
|
|
140
141
|
tzinfo (2.0.4)
|
|
141
142
|
concurrent-ruby (~> 1.0)
|
|
142
143
|
unicode-display_width (2.1.0)
|
|
144
|
+
wechat_work_webhook (0.1.0)
|
|
145
|
+
httparty
|
|
143
146
|
xcodeproj (1.21.0)
|
|
144
147
|
CFPropertyList (>= 2.3.3, < 4.0)
|
|
145
148
|
atomos (~> 0.1.3)
|
|
@@ -9,9 +9,10 @@ require 'yaml'
|
|
|
9
9
|
require 'git'
|
|
10
10
|
require 'yk_command/analyze/dependency_result'
|
|
11
11
|
|
|
12
|
+
require 'yk_command/bot/wx_bot'
|
|
12
13
|
module YkCommand
|
|
13
14
|
IGNORE_PROJECT_FILE = '.YKAnalyzeConfig.yml'.freeze
|
|
14
|
-
|
|
15
|
+
BOT_CONFIG_FILE = '.YKBotConfig.yml'.freeze
|
|
15
16
|
class Analyzer < Thor
|
|
16
17
|
no_commands do
|
|
17
18
|
|
|
@@ -105,6 +106,14 @@ module YkCommand
|
|
|
105
106
|
say "failed :#{failed_count},#{failed_name_list}", :red
|
|
106
107
|
say "skip :#{skip_count}", :yellow
|
|
107
108
|
|
|
109
|
+
bot_config_file_path = "#{path}/#{BOT_CONFIG_FILE}"
|
|
110
|
+
bot_config = File.exist?(bot_config_file_path) ? YAML.load_file(bot_config_file_path) : nil
|
|
111
|
+
if bot_config
|
|
112
|
+
bot = WxBot.new(bot_config)
|
|
113
|
+
bot.send_result_to_group(success_name_list,failed_name_list)
|
|
114
|
+
bot.send_news_to_group
|
|
115
|
+
end
|
|
116
|
+
|
|
108
117
|
end
|
|
109
118
|
|
|
110
119
|
def ignore_file(path = nil)
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
require 'cocoapods'
|
|
2
|
+
require 'pathname'
|
|
3
|
+
require 'pp'
|
|
4
|
+
require 'tmpdir'
|
|
5
|
+
require 'json'
|
|
6
|
+
|
|
7
|
+
require 'rainbow'
|
|
8
|
+
require 'yaml'
|
|
9
|
+
require 'git'
|
|
10
|
+
require 'yk_command/analyze/dependency_result'
|
|
11
|
+
require 'wechat_work_webhook'
|
|
12
|
+
module YkCommand
|
|
13
|
+
class WxBot < Thor
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
no_commands do
|
|
18
|
+
|
|
19
|
+
def initialize(config)
|
|
20
|
+
|
|
21
|
+
webhook_url = config[:webhook_url]
|
|
22
|
+
@project_url = config[:project_url]
|
|
23
|
+
@project_cover_image_url = config[:project_cover_image_url]
|
|
24
|
+
|
|
25
|
+
@wechat = WechatWorkWebhook.new(webhook_url)
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def send_result_to_group(success_list, failed_list)
|
|
29
|
+
time = Time.new
|
|
30
|
+
time_s = "#{time.year}-#{time.month}-#{time.day} "
|
|
31
|
+
@wechat.markdown("## #{time_s} 分析结果\n### 成功 #{success_list.length} 个 #{result_item_list_string(success_list, 'success')}\n### 失败 #{failed_list.length} 个 #{result_item_list_string(failed_list, 'failed')}")
|
|
32
|
+
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
def send_news_to_group
|
|
36
|
+
require 'wechat_work_webhook'
|
|
37
|
+
|
|
38
|
+
# wechat.text('test', ['@all'])
|
|
39
|
+
#
|
|
40
|
+
|
|
41
|
+
# <font color=\"DodgerBlue\"></font>
|
|
42
|
+
time = Time.new
|
|
43
|
+
time_s = "#{time.year}-#{time.month}-#{time.day} "
|
|
44
|
+
|
|
45
|
+
@wechat.news([{
|
|
46
|
+
"title" => "#{time_s} 依赖分析已完成",
|
|
47
|
+
"description" => "点击进入组件管理平台",
|
|
48
|
+
"url" => @project_url,
|
|
49
|
+
"picurl" => @project_cover_image_url
|
|
50
|
+
}])
|
|
51
|
+
|
|
52
|
+
# wechat.image('test.png')
|
|
53
|
+
#
|
|
54
|
+
# wechat.media(wechat.upload_media('test.csv')['media_id'])
|
|
55
|
+
#
|
|
56
|
+
# wechat.file('test.csv')
|
|
57
|
+
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
def result_item_list_string(list, level)
|
|
61
|
+
result = ''
|
|
62
|
+
list.each do |name|
|
|
63
|
+
if level == 'success'
|
|
64
|
+
result += "\n- <font color=\"#0099ff\">#{name}</font> "
|
|
65
|
+
else
|
|
66
|
+
result += "\n- <font color=\"#DC143C\">#{name}</font> "
|
|
67
|
+
end
|
|
68
|
+
end
|
|
69
|
+
result
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
end
|
data/lib/yk_command/version.rb
CHANGED
data/yk_command.gemspec
CHANGED
|
@@ -46,6 +46,7 @@ Gem::Specification.new do |spec|
|
|
|
46
46
|
spec.add_dependency 'colored2'
|
|
47
47
|
spec.add_dependency 'pathname','0.1.0'
|
|
48
48
|
spec.add_dependency 'httparty'
|
|
49
|
+
spec.add_dependency 'wechat_work_webhook'
|
|
49
50
|
# For more information and examples about making a new gem, checkout our
|
|
50
51
|
# guide at: https://bundler.io/guides/creating_gem.html
|
|
51
52
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: yk_command
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.5.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Major Tom
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2022-
|
|
11
|
+
date: 2022-06-02 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|
|
@@ -192,6 +192,20 @@ dependencies:
|
|
|
192
192
|
- - ">="
|
|
193
193
|
- !ruby/object:Gem::Version
|
|
194
194
|
version: '0'
|
|
195
|
+
- !ruby/object:Gem::Dependency
|
|
196
|
+
name: wechat_work_webhook
|
|
197
|
+
requirement: !ruby/object:Gem::Requirement
|
|
198
|
+
requirements:
|
|
199
|
+
- - ">="
|
|
200
|
+
- !ruby/object:Gem::Version
|
|
201
|
+
version: '0'
|
|
202
|
+
type: :runtime
|
|
203
|
+
prerelease: false
|
|
204
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
205
|
+
requirements:
|
|
206
|
+
- - ">="
|
|
207
|
+
- !ruby/object:Gem::Version
|
|
208
|
+
version: '0'
|
|
195
209
|
description: a longer description or delete this line.
|
|
196
210
|
email:
|
|
197
211
|
- v2top1@163.com
|
|
@@ -206,6 +220,7 @@ files:
|
|
|
206
220
|
- ".idea/.gitignore"
|
|
207
221
|
- ".idea/misc.xml"
|
|
208
222
|
- ".idea/modules.xml"
|
|
223
|
+
- ".idea/sonarlint/issuestore/index.pb"
|
|
209
224
|
- ".idea/vcs.xml"
|
|
210
225
|
- ".idea/yk_command.iml"
|
|
211
226
|
- Gemfile
|
|
@@ -223,6 +238,7 @@ files:
|
|
|
223
238
|
- lib/yk_command/analyze/analyze.rb
|
|
224
239
|
- lib/yk_command/analyze/dependency_result.rb
|
|
225
240
|
- lib/yk_command/analyze/request.rb
|
|
241
|
+
- lib/yk_command/bot/wx_bot.rb
|
|
226
242
|
- lib/yk_command/commands.rb
|
|
227
243
|
- lib/yk_command/module/template/objc/CategoryHeader.h
|
|
228
244
|
- lib/yk_command/module/template/objc/PrefixHeader.pch
|