del 0.1.15 → 0.1.16
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/del.rb +1 -0
- data/lib/del/message.rb +19 -0
- data/lib/del/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e16364d1ebe1f3488a79c52b5c6b02a56d67280c76b75c4f22edf17b84b007cd
|
4
|
+
data.tar.gz: 814184969ee5e5eb6506da65922354a840fc377f71cd02b132a160b7d308e83e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9f83cd17cabc1de409cf471b4158a58a661fc06216e51ff5263cc4606fb0db3a314adc998576d1bcc2731c88535f1aec03a87c0dbf156908bdca5c2cce11dc07
|
7
|
+
data.tar.gz: 03a42d1386bafd92c9e945ed547c5fd41115c1ffee2c7180447ca4f5c43ca6462fce4f96cd3d52df95a175bbdc95c081902326b4519b3ef531db92f4f1578893
|
data/lib/del.rb
CHANGED
data/lib/del/message.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
module Del
|
2
2
|
class Message
|
3
|
+
PREFIX = "/code"
|
3
4
|
attr_reader :text, :robot, :source
|
4
5
|
|
5
6
|
def initialize(text, robot:, source:)
|
@@ -12,6 +13,24 @@ module Del
|
|
12
13
|
source.reply(robot, message)
|
13
14
|
end
|
14
15
|
|
16
|
+
def execute_shell(command)
|
17
|
+
command = Array(command).flatten.join(' ')
|
18
|
+
reply("Okay, I will run #{command}.")
|
19
|
+
success = false
|
20
|
+
Open3.popen3(command) do |stdin, stdout, stderr, wait_thr|
|
21
|
+
stdout.each_line do |line|
|
22
|
+
yield line if block_given?
|
23
|
+
reply("#{PREFIX} #{line}")
|
24
|
+
end
|
25
|
+
stderr.each_line do |line|
|
26
|
+
yield line if block_given?
|
27
|
+
reply("#{PREFIX} #{line}")
|
28
|
+
end
|
29
|
+
success = wait_thr.value.success?
|
30
|
+
end
|
31
|
+
success
|
32
|
+
end
|
33
|
+
|
15
34
|
def to_s
|
16
35
|
"#{source}: #{text}"
|
17
36
|
end
|
data/lib/del/version.rb
CHANGED