percheron 0.2.2 → 0.2.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/percheron/cli/abstract_command.rb +9 -2
- data/lib/percheron/validators/config.rb +12 -3
- data/lib/percheron/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f46c7382608bc1a9d0df8f0cfb476fdd3db6d168
|
4
|
+
data.tar.gz: 80f069209a8756e8e8ffd7ad5e9306439258d75e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0994145a901b28e2cc993b3659128ff69e12e8253e0598b0f79a604bb64dde23a6ae19fa2ff96c35bf2442b883de6c2c22b6b4e96d90ebd43aa15fccd4c7263f
|
7
|
+
data.tar.gz: 686b119e1190e27e7cbf7cf96e1785eb5c4d0f941cb1816135b4cb49a13d374a5813d6096d757f6f744567351a2f65b8bcc683b2c8f49e2ce52da2f5d77ebc61
|
@@ -2,17 +2,24 @@ module Percheron
|
|
2
2
|
module CLI
|
3
3
|
class AbstractCommand < Clamp::Command
|
4
4
|
|
5
|
-
|
5
|
+
DEFAULT_CONFIG_FILE = '.percheron.yml'
|
6
|
+
|
7
|
+
option [ '-c', '--config_file' ], 'CONFIG', 'Configuration file', default: DEFAULT_CONFIG_FILE
|
6
8
|
|
7
9
|
option '--version', :flag, 'show version' do
|
8
10
|
puts Percheron::VERSION
|
9
11
|
exit(0)
|
10
12
|
end
|
11
13
|
|
14
|
+
def default_config_file
|
15
|
+
ENV.fetch('PERCHERON_CONFIG', DEFAULT_CONFIG_FILE)
|
16
|
+
end
|
17
|
+
|
12
18
|
def config
|
13
19
|
@config ||= Percheron::Config.new(config_file)
|
14
20
|
rescue Errors::ConfigFileInvalid => e
|
15
|
-
$logger.error
|
21
|
+
$logger.error e.message
|
22
|
+
exit(1)
|
16
23
|
end
|
17
24
|
end
|
18
25
|
end
|
@@ -22,6 +22,7 @@ module Percheron
|
|
22
22
|
|
23
23
|
def rules
|
24
24
|
[
|
25
|
+
:validate_config_file_defined,
|
25
26
|
:validate_config_file_existence,
|
26
27
|
:validate_config_file_not_empty,
|
27
28
|
:validate_config_file_contents
|
@@ -32,16 +33,24 @@ module Percheron
|
|
32
33
|
@config_file_contents ||= Hashie::Mash.new(YAML.load_file(config_file))
|
33
34
|
end
|
34
35
|
|
36
|
+
def validate_config_file_defined
|
37
|
+
'Config file is not defined' if config_file.nil?
|
38
|
+
end
|
39
|
+
|
35
40
|
def validate_config_file_existence
|
36
|
-
|
41
|
+
"#{base_message} does not exist" unless config_file.exist?
|
37
42
|
end
|
38
43
|
|
39
44
|
def validate_config_file_not_empty
|
40
|
-
|
45
|
+
"#{base_message} is empty" if config_file_contents.empty?
|
41
46
|
end
|
42
47
|
|
43
48
|
def validate_config_file_contents
|
44
|
-
|
49
|
+
"#{base_message} is invalid" unless config_file_contents.docker
|
50
|
+
end
|
51
|
+
|
52
|
+
def base_message
|
53
|
+
"Config file '#{config_file}'"
|
45
54
|
end
|
46
55
|
end
|
47
56
|
end
|
data/lib/percheron/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: percheron
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ash McKenzie
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-02
|
11
|
+
date: 2015-03-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: clamp
|