chatwork_to 0.0.2 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +4 -0
- data/README.md +18 -2
- data/Rakefile +0 -6
- data/bin/chatwork_to +16 -1
- data/chatwork_to.gemspec +1 -1
- data/chatwork_to.yml.example +1 -1
- data/lib/chatwork_to/config.rb +26 -13
- data/lib/chatwork_to/notifiers/simple.rb +1 -1
- data/lib/chatwork_to/process.rb +3 -3
- data/lib/chatwork_to/version.rb +1 -1
- metadata +16 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5f1bd5c5dfb0ea1f856b6db64db4411d78beb11f
|
4
|
+
data.tar.gz: d7c3328d8f2f6851a86ff5c10b2efbc71541afaa
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 99cb736a4e0a254b00cdd40e7fd0cd9091c33e676e88d782ca547d4940ba462185e6a2c47b8dcb9a22973770a4250a8a5b9c55ec20121ba330bbf7c095d57f70
|
7
|
+
data.tar.gz: 9dc8af7d5d18cbe555920c2b8189541584860024d559072cd58f50441c0c038fcaeaea609950485cba325aae2292a68d3af5aa358879598ca315c640427030ae
|
data/.gitignore
CHANGED
data/README.md
CHANGED
@@ -36,13 +36,13 @@ notifiers:
|
|
36
36
|
-
|
37
37
|
name: simple
|
38
38
|
```
|
39
|
-
If used `io` option, logger output to file. `
|
39
|
+
If used `io` option, logger output to file. `rotation`(Default:`weekly`) option is compliant with the rotation option of Ruby Logger.
|
40
40
|
```
|
41
41
|
notifiers:
|
42
42
|
-
|
43
43
|
name: simple
|
44
44
|
io: '~/logs/chatwork_to.log'
|
45
|
-
|
45
|
+
rotation: weekly
|
46
46
|
```
|
47
47
|
|
48
48
|
### Slack
|
@@ -56,10 +56,26 @@ notifiers:
|
|
56
56
|
```
|
57
57
|
|
58
58
|
## Run
|
59
|
+
### Foreground
|
59
60
|
```
|
60
61
|
$ chatwork_to
|
61
62
|
```
|
62
63
|
|
64
|
+
### Daemon
|
65
|
+
Using [daemons](https://rubygems.org/gems/daemons 'daemos').
|
66
|
+
```
|
67
|
+
$ chatwork_to start
|
68
|
+
```
|
69
|
+
```
|
70
|
+
$ chatwork_to stop
|
71
|
+
```
|
72
|
+
```
|
73
|
+
$ chatwork_to restart
|
74
|
+
```
|
75
|
+
```
|
76
|
+
$ chatwork_to status
|
77
|
+
```
|
78
|
+
|
63
79
|
## Contributing
|
64
80
|
|
65
81
|
1. Fork it ( https://github.com/[my-github-username]/chatwork_to/fork )
|
data/Rakefile
CHANGED
data/bin/chatwork_to
CHANGED
@@ -1,4 +1,19 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
+
require 'daemons'
|
2
3
|
require 'chatwork_to'
|
3
4
|
|
4
|
-
|
5
|
+
if ARGV.length > 0
|
6
|
+
daemons_opts = {
|
7
|
+
ontop: false,
|
8
|
+
monitor: true,
|
9
|
+
backtrace: true,
|
10
|
+
}
|
11
|
+
chatwork_to_opts = {
|
12
|
+
'dir' => Dir.pwd
|
13
|
+
}
|
14
|
+
Daemons.run_proc('chatwork_to', daemons_opts) do
|
15
|
+
ChatworkTo::Process.new(chatwork_to_opts).run
|
16
|
+
end
|
17
|
+
else
|
18
|
+
ChatworkTo::Process.new.run
|
19
|
+
end
|
data/chatwork_to.gemspec
CHANGED
@@ -20,10 +20,10 @@ Gem::Specification.new do |spec|
|
|
20
20
|
|
21
21
|
spec.add_dependency "activesupport", '~> 4.1.4'
|
22
22
|
spec.add_dependency "mechanize", '~> 2.7.3'
|
23
|
+
spec.add_dependency "daemons", '~> 1.1.9'
|
23
24
|
|
24
25
|
spec.add_development_dependency "bundler", "~> 1.6"
|
25
26
|
spec.add_development_dependency "rake"
|
26
|
-
#spec.add_development_dependency "rspec"
|
27
27
|
spec.add_development_dependency "pry"
|
28
28
|
spec.add_development_dependency "pry-doc"
|
29
29
|
spec.add_development_dependency "pry-stack_explorer"
|
data/chatwork_to.yml.example
CHANGED
data/lib/chatwork_to/config.rb
CHANGED
@@ -12,26 +12,39 @@ module ChatworkTo
|
|
12
12
|
|
13
13
|
private
|
14
14
|
def require_options!(opts)
|
15
|
-
raise
|
16
|
-
raise
|
17
|
-
raise
|
18
|
-
raise
|
19
|
-
raise
|
15
|
+
raise InvalidConfiguration, 'Require configuration: chatwork' if opts['chatwork'].blank?
|
16
|
+
raise InvalidConfiguration, 'Require configuration: chatwork.email' if opts['chatwork']['email'].blank?
|
17
|
+
raise InvalidConfiguration, 'Require configuration: chatwork.pass' if opts['chatwork']['pass'].blank?
|
18
|
+
raise InvalidConfiguration, 'Require configuration: chatwork.rooms' if opts['chatwork']['rooms'].blank?
|
19
|
+
raise InvalidConfiguration, 'Require configuration: notifiers' if opts['notifiers'].blank?
|
20
20
|
end
|
21
21
|
|
22
22
|
class << self
|
23
|
-
def load(
|
24
|
-
conf_hash = load_yaml(
|
25
|
-
|
23
|
+
def load(opts = {})
|
24
|
+
conf_hash = load_yaml(opts)
|
25
|
+
if conf_hash.present?
|
26
|
+
new(conf_hash)
|
27
|
+
else
|
28
|
+
raise InvalidConfiguration, 'Nothing configuration'
|
29
|
+
end
|
26
30
|
end
|
27
31
|
|
28
32
|
private
|
29
|
-
def
|
30
|
-
%w( ./ ~/ )
|
33
|
+
def default_conf_dirs
|
34
|
+
%w( ./ ~/ )
|
31
35
|
end
|
32
36
|
|
33
|
-
def load_yaml(
|
34
|
-
|
37
|
+
def load_yaml(opts = {})
|
38
|
+
confs = default_conf_dirs
|
39
|
+
confs.unshift(opts['dir']) if opts['dir'].present?
|
40
|
+
confs.unshift(opts['yaml']) if opts['yaml'].present?
|
41
|
+
|
42
|
+
confs.compact.each do |file_or_dir|
|
43
|
+
if File.directory?(file_or_dir)
|
44
|
+
yml = File.join(file_or_dir, 'chatwork_to.yml')
|
45
|
+
else
|
46
|
+
yml = file_or_dir
|
47
|
+
end
|
35
48
|
config = YAML.load_file(File.expand_path(yml)) rescue nil
|
36
49
|
return config unless config.nil?
|
37
50
|
end
|
@@ -40,5 +53,5 @@ module ChatworkTo
|
|
40
53
|
end
|
41
54
|
end
|
42
55
|
|
43
|
-
class
|
56
|
+
class InvalidConfiguration < StandardError; end;
|
44
57
|
end
|
@@ -6,7 +6,7 @@ module ChatworkTo
|
|
6
6
|
if opts['io'].is_a?(String)
|
7
7
|
opts['io'] = File.expand_path(opts['io'])
|
8
8
|
FileUtils.mkdir_p(File.dirname(opts['io']))
|
9
|
-
|
9
|
+
FileUtils.touch(opts['io']) unless File.exists?(opts['io'])
|
10
10
|
end
|
11
11
|
@logger = Logger.new(opts['io'], opts['rotation'])
|
12
12
|
@logger.level = Logger::DEBUG
|
data/lib/chatwork_to/process.rb
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
module ChatworkTo
|
2
2
|
class Process
|
3
3
|
CONTINUOUS_ERROR_LIMIT = 10
|
4
|
-
def initialize(
|
5
|
-
@
|
4
|
+
def initialize(opts = {})
|
5
|
+
@options = opts
|
6
6
|
prepare
|
7
7
|
end
|
8
8
|
|
@@ -43,7 +43,7 @@ module ChatworkTo
|
|
43
43
|
|
44
44
|
private
|
45
45
|
def init_config
|
46
|
-
@config = Config.load(@
|
46
|
+
@config = Config.load(@options)
|
47
47
|
end
|
48
48
|
|
49
49
|
def init_client
|
data/lib/chatwork_to/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: chatwork_to
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- nalabjp
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-08-
|
11
|
+
date: 2014-08-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -38,6 +38,20 @@ dependencies:
|
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: 2.7.3
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: daemons
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: 1.1.9
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: 1.1.9
|
41
55
|
- !ruby/object:Gem::Dependency
|
42
56
|
name: bundler
|
43
57
|
requirement: !ruby/object:Gem::Requirement
|