asetus 0.1.0 → 0.1.1

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.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/asetus.gemspec +2 -3
  3. data/lib/asetus.rb +6 -4
  4. metadata +9 -22
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: da3aafea48ec7fe4756e97f0bb422b9c6ac3ba1f
4
- data.tar.gz: 9df507d85b57009d91b3fca6573c38bae421cc2e
3
+ metadata.gz: 6f3c763701092ea923250405a4adab73a3d136fc
4
+ data.tar.gz: 64545850f1db20c25d0d5052d35657f36710aae3
5
5
  SHA512:
6
- metadata.gz: 1d7cd5af04e0cd6650b7cb8d57d55b468e9a344d044e6516843ef1fb1e7e2decc0675086f48e72c3e23ff609436d3de27217ffc68563167ed0edec2f40e8acd4
7
- data.tar.gz: bcabe4095d514702c54842f12ad06a31ce39f6a76dcb38b1c5e9ab6d27d9ab3c07ab30800ffa7ab37317c48e9bc69264315111e01b17def3b64d30482602f84d
6
+ metadata.gz: 35b3a7c81d79d7aca59f3489ac064adbb9eb3c3fce822f469f716ecb738ff8ddce97aaa0d052d563085a1276b6885507e1901aa555ce4c804bd2099ffbb98724
7
+ data.tar.gz: 1f2c5ab1f16fc2a8557c12638ef43f304a1e77d40e3417cdddfc11f426f5d9d31f42953c591e0215c630500bd3eb0278097081d4bf92db476aaa9771ca2e70d5
@@ -1,6 +1,7 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'asetus'
3
- s.version = '0.1.0'
3
+ s.version = '0.1.1'
4
+ s.licenses = ['Apache-2.0']
4
5
  s.platform = Gem::Platform::RUBY
5
6
  s.authors = [ 'Saku Ytti' ]
6
7
  s.email = %w( saku@ytti.fi )
@@ -11,6 +12,4 @@ Gem::Specification.new do |s|
11
12
  s.files = `git ls-files`.split("\n")
12
13
  s.executables = %w( )
13
14
  s.require_path = 'lib'
14
-
15
- s.add_dependency 'slop'
16
15
  end
@@ -23,7 +23,7 @@ class UnknownOption < AsetusError; end
23
23
  # ssh_hosts = CFG.ssh.hosts
24
24
  class Asetus
25
25
  CONFIG_FILE = 'config'
26
- attr_reader :cfg, :default
26
+ attr_reader :cfg, :default, :file
27
27
  attr_accessor :system, :user
28
28
 
29
29
  class << self
@@ -92,6 +92,7 @@ class Asetus
92
92
  # @option opts [String] :adapter adapter to use 'yaml' or 'json' for now
93
93
  # @option opts [String] :usrdir directory for storing user config ~/.config/name/ by default
94
94
  # @option opts [String] :sysdir directory for storing system config /etc/name/ by default
95
+ # @option opts [String] :cfgfile configuration filename by default CONFIG_FILE
95
96
  # @option opts [Hash] :default default settings to use
96
97
  # @option opts [boolean] :load automatically load+merge system+user config with defaults in #cfg
97
98
  # @option opts [boolean] :key_to_s convert keys to string by calling #to_s for keys
@@ -100,6 +101,7 @@ class Asetus
100
101
  @adapter = (opts.delete(:adapter) or 'yaml')
101
102
  @usrdir = (opts.delete(:usrdir) or File.join(Dir.home, '.config', @name))
102
103
  @sysdir = (opts.delete(:sysdir) or File.join('/etc', @name))
104
+ @cfgfile = (opts.delete(:cfgfile) or CONFIG_FILE
103
105
  @default = ConfigStruct.new opts.delete(:default)
104
106
  @system = ConfigStruct.new
105
107
  @user = ConfigStruct.new
@@ -112,8 +114,8 @@ class Asetus
112
114
  end
113
115
 
114
116
  def load_cfg dir
115
- file = File.join dir, CONFIG_FILE
116
- file = File.read file
117
+ @file = File.join dir, @cfgfile
118
+ file = File.read @file
117
119
  ConfigStruct.new(from(@adapter, file), :key_to_s=>@key_to_s)
118
120
  rescue Errno::ENOENT
119
121
  ConfigStruct.new
@@ -121,7 +123,7 @@ class Asetus
121
123
 
122
124
  def save_cfg dir, config
123
125
  config = to(@adapter, config)
124
- file = File.join dir, CONFIG_FILE
126
+ file = File.join dir, @cfgfile
125
127
  FileUtils.mkdir_p dir
126
128
  File.write file, config
127
129
  end
metadata CHANGED
@@ -1,29 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: asetus
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Saku Ytti
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-07-20 00:00:00.000000000 Z
12
- dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: slop
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'
11
+ date: 2014-07-22 00:00:00.000000000 Z
12
+ dependencies: []
27
13
  description: configuration library with object access to YAML/JSON/CSON backends
28
14
  email:
29
15
  - saku@ytti.fi
@@ -31,7 +17,7 @@ executables: []
31
17
  extensions: []
32
18
  extra_rdoc_files: []
33
19
  files:
34
- - .gitignore
20
+ - ".gitignore"
35
21
  - Gemfile
36
22
  - README.md
37
23
  - Rakefile
@@ -41,7 +27,8 @@ files:
41
27
  - lib/asetus/adapter/yaml.rb
42
28
  - lib/asetus/configstruct.rb
43
29
  homepage: http://github.com/ytti/asetus
44
- licenses: []
30
+ licenses:
31
+ - Apache-2.0
45
32
  metadata: {}
46
33
  post_install_message:
47
34
  rdoc_options: []
@@ -49,17 +36,17 @@ require_paths:
49
36
  - lib
50
37
  required_ruby_version: !ruby/object:Gem::Requirement
51
38
  requirements:
52
- - - '>='
39
+ - - ">="
53
40
  - !ruby/object:Gem::Version
54
41
  version: '0'
55
42
  required_rubygems_version: !ruby/object:Gem::Requirement
56
43
  requirements:
57
- - - '>='
44
+ - - ">="
58
45
  - !ruby/object:Gem::Version
59
46
  version: '0'
60
47
  requirements: []
61
48
  rubyforge_project: asetus
62
- rubygems_version: 2.0.14
49
+ rubygems_version: 2.2.2
63
50
  signing_key:
64
51
  specification_version: 4
65
52
  summary: configuration library